美文网首页
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