美文网首页
2018-07-25-回调中遇到的一些方法

2018-07-25-回调中遇到的一些方法

作者: 护念 | 来源:发表于2018-07-25 07:43 被阅读0次

    toggle切换true/false

    user.toggle(:terms_of_service)
    PS: 1、如果原terms_of_service为true,则变成false
    2、有无!表示是否跳过回调

    touch更新对象时间戳

    user.touch
    PS:有无!表示是否跳过回调

    decrement 相关

    decrement

    user = User.first
    user.decrement(:age)
    user.save
    

    decrement!

    user = User.first
    user.decrement!(:age,2)
    

    1、decrement 和 decreament! 都可以接两个参数,第二个参数是减少数(可省)
    2、decrement 需要save对象才会生效,decrement!直接生效

    decrement_counter
    User.decrement_counter(:age,1,touch: true)

    1、参数含义decrement_counter(字段,id,是否更新时间戳可省)
    2、它是一个类方法
    3、它没有decrement_counter!这种写法
    4、它每次减少只能是1

    update相关

    update 与 update_attributes

    1、后接hash,会更新对象中所有的字段
    2、update_attributes不会跳过回调

    update_column VS update_attribute

    1、它们是唯一两个不能接hash的方法(field,value)
    2、update_attribute 不会跳过回调

    update_columns

    更新单个字段,接hash

    update_all

    1、类方法
    2、更新所有对象

    相关文章

      网友评论

          本文标题:2018-07-25-回调中遇到的一些方法

          本文链接:https://www.haomeiwen.com/subject/kkmumftx.html