ThinkPHP第十五天(setField、setInc、setDec、关联模型)

1、ThinkPHP中的比较特殊连贯操作

  如果要更新某个字段可以用setField方法,比如M('user')->where('id=1')->setField('username','ThinkPHP');这样子就只更新了username字段

  如果要对某个字段增加或者减少某个数值,可以用 setInc(字段名,增加数值默认为1),setDec(字段名,减少数值默认为1);M('user')->where('id=1')->setInc('level',5);

2、不用where删除数据

  $User->delete('1,2,5'); // 删除主键为1,2和5的用户数据。

3、关联模型一个简单实例:

Class BlogRelationModel extends RelationModel{
    protected $tableName = 'blog';//由于模型名称不是默认表名,此处需定义$tableName指定表名
    protected $_link = array(//此处定义关联模型
        'cate'=>array(    //关联1 与category表进行关联
            'mapping_type'=>BELONGS_TO,//指定关联方式
            'mapping_name'=>'category',//关联映射名称 在控制器读取时显示的数组键名 也是relation('category')引用的名称
            'class_name'=>'Category',//关联的模型名称,即关联表名称。
            'foreign_key'=>'cid',//外键名称
            'mapping_fields'=>'name',//读取字段列表
            'as_fields'=>'name:categoryname',//设定这个参数后,在读取时候不是显示cagegory数组了,而是一个categoryname项
        ),     
        'attr'=>array(
            'mapping_type'=>MANY_TO_MANY,//关联方式
            'class_name'=>'Attribute',//关联模型类即表名
            'mapping_name'=>'attribute',//控制器端显示名称
            'foreign_key'=>'bid',//在中间表中的主表外键
            'relation_foreign_key'=>'aid',//在中间表中的从表外键
            'relation_table'=>'blog_attribute',//名称中间表
            'mapping_order'=>'aid desc'//中间表数据排序方式  
        ),
    );   
}

在控制器端调用关联模型类如下:

$blog = D('BlogRelation')->where('del = 0')->field('del',true)->relation(true)->select();

 

转载于:https://www.cnblogs.com/huilange/p/3391398.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值