CodeIgniter 的 Model
基本的 Model 看起來會像這樣。
model 的檔案要放在 application/models/ 下,基本原型為
Model 需要在 Controller 載入才可以。
簡單的 Controller 範例
當 Model 被載入時,並不會自動連結資料庫,不過可以像下面這樣,讓 Model 自動載入
模型(Models)
- class Blogmodel extends CI_Model {
- var $title = '';
- var $content = '';
- var $date = '';
- function __construct()
- {
- // 呼叫模型(Model)的建構函數
- parent::__construct();
- }
- function get_last_ten_entries()
- {
- $query = $this->db->get('entries',10);
- return $query->result();
- }
- function insert_entry()
- {
- $this->title = $_POST['title']; // 請看一下下面的注意事項
- $this->content = $_POST['content'];
- $this->date = time();
- $this->db->insert('entries', $this);
- }
- function update_entry()
- {
- $this->title = $_POST['title'];
- $this->content = $_POST['content'];
- $this->date = time();
- $this->db->update('entries', $this,array('id' => $_POST['id']));
- }
- }
model 的檔案要放在 application/models/ 下,基本原型為
- class Model_name extends CI_Model {
- function __construct()
- {
- parent::__construct();
- }
- }
Model 需要在 Controller 載入才可以。
- $this->load->model('Model_name');
簡單的 Controller 範例
- class Blog_controller extends CI_Controller {
- function blog()
- {
- $this->load->model('Blog');
- $data['query'] = $this->Blog->get_last_ten_entries();
- $this->load->view('blog',$data);
- }
- }
當 Model 被載入時,並不會自動連結資料庫,不過可以像下面這樣,讓 Model 自動載入
- $config['hostname'] = "localhost";
- $config['username'] = "myusername";
- $config['password'] = "mypassword";
- $config['database'] = "mydatabase";
- $config['dbdriver'] = "mysql";
- $config['dbprefix'] = "";
- $config['pconnect'] = FALSE;
- $config['db_debug'] = TRUE;
- $this->load->model('Model_name','',$config);
模型(Models)
留言