thinkphp 视图模型 两个字段映射同一个表

Posted 听风且雨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp 视图模型 两个字段映射同一个表相关的知识,希望对你有一定的参考价值。

thinkphp 视图模型 是挺好用的。

这里有一种情况,例如一个文章表,有一个字段是add_admin_id, 用于记录添加者的id,还有一个字段edit_admin_id, 用于记录最后编辑者的id, 需要用视图模型通过admin_id来查询出真实姓名。这种清空是同一个表的两个字段分别又对应着同一个表。视图可以如下

class Red_userViewModel extends ViewModel{
    
    
    Protected $viewFields = array(
        
        ‘red_user‘ => array(
            ‘*‘,‘_type‘=>‘LEFT‘
            ),
        ‘admin‘=>array(
            ‘name‘=>"add_name",‘_on‘ => ‘admin.id = red_user.add_admin_id‘,‘_type‘=>‘LEFT‘
            ),
        ‘admin2‘=>array(
            ‘name‘=>‘edit_name‘,‘_table‘=> ‘tou_admin‘,‘_as‘ => ‘admin2‘,‘_on‘ => ‘admin2.id = red_user.lastedit_admin_id‘
            ),
        );
    

}

可以看出red_user表中add_admin_id对应admin表,而同样是red_user表中的lastedit_admin_id对应admin2,而admin2不过是admin的别名

同样要注意‘_type‘=>‘LEFT‘的用法

以上是关于thinkphp 视图模型 两个字段映射同一个表的主要内容,如果未能解决你的问题,请参考以下文章

thinkPHP模型关联查询

为啥thinkphp中字段映射不起作用

thinkphp 2.0无法自动映射字段,求教啊

thinkphp 关联查询 怎么统计关联表查出来的数据数量

laravel 字段映射问题,表单中提交字段与数据表中字段不一致?

ThinkPHP教程_PHP框架之ThinkPHP三大自动