rails中存在的任何方法只是修改数据库列而不运行之前的任何方法,在保存等方法之后?

时间:2013-12-23 07:38:06

标签: ruby-on-rails ruby activerecord

rails中存在任何方法,只是在保存之前和保存之后不修改数据库列而不运行rails默认方法。

假设我有一个模型M,我需要更新M的一列,而不需要调用Rails在保存对象时通常调用的任何方法。

假设我有一篇对象文章并且文章有一个专栏 - 已发布。我想在后台只运行一个SQL查询,

update articles set published = 1; 

>> Article.save  # will run all the callbacks and validations

>> Article(:validate => false)  # this only skips validations

有没有办法跳过所有回调和验证?

1 个答案:

答案 0 :(得分:0)

使用update_column方法

article.update_column(:published, 1)