无法为 Codeigniter 加载模型

Posted

技术标签:

【中文标题】无法为 Codeigniter 加载模型【英文标题】:Can't load model for Codeigniter 【发布时间】:2012-04-10 18:07:18 【问题描述】:

我的数据库中有一个名为 user_worksheet_records 的表,我正在尝试将其加载到 Codeigniter 中。

SQL代码如下:

CREATE TABLE `user_worksheet_records` (
    `rid` INT(10) NOT NULL AUTO_INCREMENT,
    `uid` INT(10) NOT NULL,
    `worksheet_id` INT(10) NOT NULL,
    `page_num` INT(10) NOT NULL,
    `score` INT(10) NOT NULL,
    `time_taken` TIME NOT NULL,
    `last_updated` DATETIME NOT NULL,
    `record_date` DATETIME NOT NULL,
    PRIMARY KEY (`rid`),
    INDEX `user_worksheet_record_user` (`uid`),
    INDEX `user_worksheet_record_worksheet` (`worksheet_id`),
    CONSTRAINT `user_worksheet_record_user` FOREIGN KEY (`uid`) REFERENCES `users` (`uid`),
    CONSTRAINT `user_worksheet_record_worksheet` FOREIGN KEY (`worksheet_id`) REFERENCES `worksheets` (`wsid`)
)
COLLATE='latin1_swedish_ci'
ENGINE=InnoDB
AUTO_INCREMENT=5;

此表的模型代码(user_worksheet_records_model.php):

<?php
class User_worksheet_records_model extends MY_Model 
    public function __construct()
        $this->_table = 'user_worksheet_records';
        $this->primary_key = 'rid';
        $this->load->database();
    

从这里获得的非常方便的 My_model 超类代码: https://github.com/jamierumbelow/codeigniter-base-model

使用一些评论,我发现它发生在这一行。

$this->load->model('user_worksheet_records_model');

我已将我的模型加载代码用于许多其他模型,通过查看我的代码似乎找不到任何错误。我猜我不小心在数据库/codeigniter 中碰到了某种关键字,但是当我查看代码时似乎找不到任何东西。任何人都知道发生了什么或如何让 Codeigniter 提供错误消息?我将配置中的 log_threshold 设置为 4,但没有记录任何错误或崩溃消息。

救命!

【问题讨论】:

你想看到什么?似乎没有设置输出 啊我创建了一个视图,它基本上有一堆加载语句,然后是一堆数据检索调用,然后呈现一个视图,尽管归结为页面的最简单表现形式:第 1 行)$this- >load->model('user_worksheet_records_model');第 2 行) echo '成功加载';成功加载的文本不会显示。 PS:人们如何格式化他们的 cmets 以便代码在这里显示为一个块? 【参考方案1】:

在您的 __construct 方法中使用 parent::__construct();

【讨论】:

【参考方案2】:

错误在于以下两行:

<?php
class User_...

打开显示所有字符会产生:

<?phpCR
class User_...

解决方案是添加一个空格:

<?php CR
class User_...

通过重新键入控制器来解决这个问题,发现它开始工作并与我的存储库签入进行比较。

我什至不知道这可能是一个错误......

【讨论】:

以上是关于无法为 Codeigniter 加载模型的主要内容,如果未能解决你的问题,请参考以下文章

Codeigniter 加载页面非常慢

Codeigniter - 只能在 autoload.php 中加载模型

codeigniter 帮助在加载模型时导致错误

在 Codeigniter 中查看之前加载模型

PHP 在CodeIgniter中将一个模型加载到另一个模型中

在CodeIgniter中将一个模型加载到另一个模型中