UserModel如下:
[php]
- <?php
- namespace Home\Model;
- class UserInfoModel extends \Think\Model {
- public $tableName = "UserInfo";
- protected $tablePrefix = ‘‘;
- protected $trueTableName = ‘UserInfo‘;
- public function UserInfoModel() {
- }
- public function __construct() {
- parent::__construct ();
- }
- }
在 controller 里引用,大致如下
[php]
- // 本类由系统自动生成,仅供测试用途
- namespace Home\Controller;
- use Think\Controller;
- use Home\Model\UserInfoModel as User;
- class IndexController extends Controller {
- public function index() {
- $orders = new User ();
- $result = $orders->select ();
- dump ( $result );
- }
- }
出现标题所示问题的原因大致如下:
1.定义的 model 没有放在合适的位置.
2.定义的 model 没有引用命名空间.
3.表的名称不符合 thinkphp 命名规范,而且没有声明关于数据表名称的属性定义.
解决要点:
1.model,通常放在 module->Moel->xxx.class.php(注意 tp的命名规范).
注意有可能忘记文件名的 class。
2.在 model 里要先引用tp 的 model 类,或者如上所示代码中直接 extends.
3.看下文档《基础》——>《开发规范》和《模型》——>《模型定义》一节
thinkphp Class 'Home\Mode\User' not found 无法找到数据模型类的问题
时间: 2024-11-05 23:23:26