से प्यार करना सीखें मैं समाचार अनुभाग बनाने के बारे में Codeigniter website से ट्यूटोरियल का अनुसरण कर रहा हूं। अभी मुझे लाइन 13 पर एक अपरिभाषित संपत्ति संदेश मिल रहा है।कोडनिर्देशक अपरिभाषित संपत्ति, या मेरा नियंत्रक चिंताजनक क्यों बंद करेगा और मॉडल
यहां मेरा मॉडल है। अनुप्रयोगों/मॉडल/articles_model
<?php
class Articles_model extends CI_Model{
public function __construct(){
$this->load->database();
}
public function get_article($slug = False){
if ($slug === FALSE){
$query = $this->db->get('articles');
return $query->result_array();
}
$query = $this->db->get('articles');
return $query->result_array();
}
$query = $this->db->get_where('articles', array('slug' => $slug));
return $query->row_array();
}
और यहाँ नियंत्रक है। अनुप्रयोगों/नियंत्रक/articles.php
<?php
class Articles extends CI_Controller{
public function __contruct(){
parent::__construct();
$this->load->model('Articles_model');
}
public function index(){
//Message: Undefined property Articles::Articles_model
$data['articles'] = $this->Articles_model->get_article();
$data['title'] = "Archive";
$this->load->view('templates/header', $data);
$this->load->view('articles/index', $data);
$this->load->view('templates/footer');
}
public function view($slug){
$data['articles'] = $this->Articles_model->get_article($slug);
if(empty($data['articles'])){
show_404();
}
$data['title'] = $data['articles']['title'];
$this->load->view('templates/header', $data);
$this->load->view('articles/view', $data);
$this->load->view('templates/footer');
}
}
इन सभी मार्गों मैं सेटअप कर रहे हैं। अनुप्रयोगों/config/routes.php
$route['articles/(:any)'] = 'articles/view/$1';
$route['articles'] = 'articles';
$route['default_controller'] = 'pages/view';
$route['(:any)'] = 'pages/view/$1';
मेरे डेटाबेस इस
mysql> describe articles
+-------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| title | varchar(128) | NO | | NULL | |
| slug | varchar(128) | NO | MUL | NULL | |
| text | text | NO | | NULL | |
+-------+--------------+------+-----+---------+----------------+
मैं एक राजधानी पहला अक्षर, $this->Articles_model
साथ संपत्ति का उपयोग कर की कोशिश की है, और नहीं, $this->articles_model
तरह दिखता है।
क्या मुझे कुछ बेवकूफ याद आ रही है? यदि ऐसा है तो यह क्या है?
यदि यह बेवकूफ नहीं है तो मैं कैसे डीबग कर सकता हूं?
संपादित
print_r के ouput, टिप्पणी के अनुसार, "Articles_model" शामिल नहीं किया। पहली टायर चीज मेरे सिर पर है, लेकिन CTRL-F नहीं है। इसके अलावा अपाचे लॉग यह उल्लेख ...
[Sun Sep 23 13:19:30 2012] [error] [client 127.0.0.1] PHP Fatal error: Call to a member function get_article() on a non-object in /home/noel/dev/web/
ci/CodeIgniter_2.1.2/application/controllers/articles.php on line 13
EDIT1
मुझे लगता है मैं यह तय सोचा, लेकिन नहीं, मेरी जवाब पर टिप्पणी देखें। किसी कारण से $this->article_model
कोई ऑब्जेक्ट नहीं है।
क्यों? मैं एक विश्व मेला, एक पिकनिक और रोडियो में गया हूं और यह सबसे बेवकूफ चीज है जिसे मैंने कभी सुना है, इयरफ़ोन के एक सेट पर आ गया है। आपको यकीन है कि आपको आज के कोड मिल गए हैं?
लाइन 12 पर, त्रुटि मिलने से ठीक पहले। एक 'print_r ($ यह) करें;'। ऑब्जेक्ट गुणों के पहले चरण में (उम्मीद है कि यह आपके सिर पर नहीं है, हालांकि यह हो सकता है ...) "articles_model" की तलाश करें। यदि आप अनिश्चित हैं कि यह पहला स्तर है, तो 'print_r' के कुछ आउटपुट के साथ अपना प्रश्न अपडेट करने का प्रयास करें ताकि हम आपकी और अधिक सहायता कर सकें। – Webnet
हो गया। अद्यतन ओपी। धन्यवाद। अभी भी कोई खुशी नहीं है। – noel
यह, लोग, आप एक प्रश्न का शीर्षक कैसे बनाते हैं। – SomeKittens