Home > Backend Development > PHP Tutorial > php框架 - Thinkphp中D方法必须要有对应数据库吗?

php框架 - Thinkphp中D方法必须要有对应数据库吗?

WBOY
Release: 2016-06-06 20:17:12
Original
1817 people have browsed it

之前做得一个小项目代码

<code>class LoginController extends Controller {
    public function login(){
        $Admin = D('Login');        //实例化Admin模型
        if ($Admin->create()){        //创建数据模型
            $user = I('post.name');        
            $this->session($user);
            $this->success('Login success!',"/hc_tp/Admin");        //跳转到内页面
        }else {
            echo $this->error($Admin->getError());
        }
    }
}</code>
Copy after login
Copy after login

这里调用D方法的数据表 前缀_Login 是不存在的,

今天再重新做一个新的项目的时候提醒出现这个,提示数据表不存在

php框架 - Thinkphp中D方法必须要有对应数据库吗?

求解,忘了当时是搞了TP得配置还是怎么的

回复内容:

之前做得一个小项目代码

<code>class LoginController extends Controller {
    public function login(){
        $Admin = D('Login');        //实例化Admin模型
        if ($Admin->create()){        //创建数据模型
            $user = I('post.name');        
            $this->session($user);
            $this->success('Login success!',"/hc_tp/Admin");        //跳转到内页面
        }else {
            echo $this->error($Admin->getError());
        }
    }
}</code>
Copy after login
Copy after login

这里调用D方法的数据表 前缀_Login 是不存在的,

今天再重新做一个新的项目的时候提醒出现这个,提示数据表不存在

php框架 - Thinkphp中D方法必须要有对应数据库吗?

求解,忘了当时是搞了TP得配置还是怎么的

模型对对应的数据表 默认是跟模型名同名的数据表

Login模型默认对应Login表,
如果不想这样对应,可以用
protected $tableName='tablename';
指定数据表名

think PHP里模型的名字必须是表名

D方法内部实现是实例化具体的数据表类

可以设置虚拟模型

<code>class LoginModel extends Model {
    protected $autoCkeckFields = false; //关闭检测字段
}</code>
Copy after login

不一定! 应该是D(ModelName); 默认ModelName 对应的是表名,不对应的话会报错, 但是可以通过
protected $autocheckfields = false; 来关闭自动对应, 这样你在Model里就可以 随便M(任何表名)

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template