簡體   English   中英

Codeigniter和Mongodb庫-我需要模型嗎?

[英]Codeigniter and Mongodb library - do I need a model?

我正在嘗試將mongodb用作我的codeigniter應用程序的后端。 我找到並遵循以下示例: http : //www.surfinme.com/codeigniter-mongodb/

所以我有以下結構:

+應用程序\\庫\\ Mongo_db.php配置\\ mongodb.php控制器\\ api.php

到目前為止,這是我的api.php文件的樣子:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Api extends CI_Controller {

        public function __construct()
        {
                parent::__construct();
                //loading  the mongodb library
                $this->load->library('mongo_db');
        }

        public function index()
        {
                $data['main_content'] = "dashboard";
                $this->load->view('includes/template',$data);
        }

        public function list_available()
        {

                //connect to mongodb collection (i.e., table) named as ‘surfinme_index’
                $collection = $this->mongo_db->db->selectCollection('testcollection');
                $result=$collection->find();
                foreach($result as $data)
                { 
                  var_dump($data);
                }
         }
   }

而且代碼似乎可以正常工作。 它從數據庫中獲取我的數據,並將其轉儲到我的瀏覽器中。 但這“感覺”是錯誤的,因為我沒有模型。 還是應該將庫作為模型層查看? 我可以輕松地在models文件夾中創建一個名為api_model的文件,然后從那里進行對庫的調用。 但這是過度殺傷力嗎?

任何意見,將不勝感激。

謝謝。

取決於您要嚴格遵守MVC原則。

通過為數據庫操作創建模型,您可以獲得一些潛在的好處。 首先,它提供了可被多個控制器重用的源。 例如,可能有多個使用selectCollection控制器。 其次,如果由於某種原因決定更改數據庫,則只需修改模型,而不是對調用mongo_db每個控制器進行mongo_db

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM