模型 LoginForm 和 User 的关系是什么? [ 2.0 版本 ]
才接触 Yii,不太明白 LoginForm 和 User 的关系。百度查意思就是 LoginForm 和 User,一个用于接收用户提交的数据,一个用于获取数据库的数据。
如果以后有文章类 Post,是不是还要写 Post 提交的 Form 类?一个表单我就要写一个类吗?
最佳答案
-
这个我觉得你应该是将yii2手册中的
Model
模型 部分仔细读一下。Model
【模型】 提供了校验和属性,LoginModel
用于接收 账号、密码、是否记住我 三个属性,省去了if(用户名== "")
这种硬代码,而使用$login_model->load() 和 $login_model->validate()
这样优雅的方式进行验证和提示。而
User
是纯数据库的表映射模型,与LoginModel
的区别是否映射数据库字段,属于Orm
核心的一种表现形式。User
可以使用其进行数据库增删改查$user = new User(); $user->name = 'test'; $user->instert();
LoginModel
这种"普通"的Model
应用场景:登录需求,我输入的账号密码不需要入库,但是还要验证其是否存在,符合输入的要求。 那么就可以使用继承Model的方式,配合rules,进行校验 $login_model = new Login_model(); if($login_model->load() && $login_model->validate()) { }
两者都间接或者直接继承了
Model
类。
其他 1 个回答
-
return19931112 回答于 2019-10-12 10:36 举报
理解出现偏差了吧,LoginModel 和 User 没有什么关系,都只是一个 Model 而已,LoginModel 是负责处理登录的数据的 Model,User 是负责用户数据的 Model,各司其职而已,可能因为登录会填写用户的部分数据从而让你产生了误解。
醉挽清风 南京
注册时间:2018-07-03
最后登录:2022-09-06
在线时长:15小时38分
最后登录:2022-09-06
在线时长:15小时38分
- 粉丝1
- 金钱180
- 威望10
- 积分430