2017-08-02 09:38:29 2159次浏览 3条回答 0 悬赏 10 金钱

哈喽大家好,本人刚开始学习Yii,有个问题想请教大家。
yii中已经有了AR模型为什么还要使用表单模型呢?比如,yii创建了一个用户表的AR模型,然后做用户注册和登录的时候,还要做两个表单模型分别用于用户注册和登录。其实注册和登录的动作完全可以直接在用户AR模型实现的,指定不同场景就可以了,为什么要多创建两个表单模型呢?这样一个表单就相应创建一个模型不是会越来越乱吗?
有点疑惑,请大家不吝赐教,谢谢!

最佳答案

  • ymfhack 发布于 2017-08-02 16:06 举报

    为了脱离数据库层,架构建设考虑把,后期如果换数据库层了可以直接改掉AR就是了

    1 条回复
    回复于 2017-08-02 16:29 回复

    嗯,谢谢!

  • 回答于 2017-08-02 12:03 举报

    ......................

    8 条回复
    回复于 2017-08-02 12:08 回复

    你好,可以说说你的理解吗?

    回复于 2017-08-02 15:38 回复

    可以不用表单模型吧,在ar上操作就可以了

    回复于 2017-08-02 16:30 回复

    确实可以,我只是不知道两种做法的优缺点,故而提问。

    回复于 2017-08-02 20:45 回复

    我知道了,一般情况下确实不需要使用表单模型,但是如果要在表单上显示某些实际数据表中没有的属性字段,例如用户注册时候的验证码和确认密码,就要借助表单模型了,否则会报错,提示不存在对应的属性。。。

    回复于 2017-08-02 20:47 回复

    除非在AR类定义数据表额外属性字段作为成员变量。。

    回复于 2017-08-03 09:15 回复

    66666666666666

    回复于 2017-08-03 14:10 回复

    不是定一个变量就可以了?

    回复于 2017-08-03 14:52 回复

    恩,定义类的成员变量就可以了。

  • 回答于 2017-08-05 08:02 举报

    这两种方式都用过。
    通过不同场景实现会让场景过多, 而且增加场景后rule要做调整,有时还会影响其他场景,代码没那么清晰。
    通过Form Model让各代码变得更单纯更清晰,更利于以后的维护。

    2 条回复
    回复于 2017-08-07 09:24 回复

    但是,随着应用的开发,表单会越来越多,表单模型也会越来越多,这样不会给项目的管理带来不便吗?

    回复于 2017-08-07 10:26 回复

    可以分文件夹管理

您需要登录后才可以回答。登录 | 立即注册
是啊俊
经理

是啊俊

注册时间:2017-07-28
最后登录:2018-01-23
在线时长:13小时58分
  • 粉丝0
  • 金钱785
  • 威望20
  • 积分1115

热门问题