Ruby on rails Rails 4将update_属性(params.permit)与fix变量相结合
通过API,我的模型通过以下调用得到更新:Ruby on rails Rails 4将update_属性(params.permit)与fix变量相结合,ruby-on-rails,ruby-on-rails-4,activerecord,Ruby On Rails,Ruby On Rails 4,Activerecord,通过API,我的模型通过以下调用得到更新: if @user.update_attributes(params.permit(:name, :phone, ...) format ... else format ... end 这是嵌套在另一个if查询中的,根据结果,我想在同一个模型中设置另一个变量。到目前为止,我是用 @user.update_attributes(variable: :value) 但这在我的桌子上写了两个字,我很确定这是可能的 合并成一个,但我不知道
if @user.update_attributes(params.permit(:name, :phone, ...)
format ...
else
format ...
end
这是嵌套在另一个if查询中的,根据结果,我想在同一个模型中设置另一个变量。到目前为止,我是用
@user.update_attributes(variable: :value)
但这在我的桌子上写了两个字,我很确定这是可能的
合并成一个,但我不知道如何合并。
这就是整个街区:
if test_for_something
@user.update_attributes(variable: :value)
if @user.update_attributes(params.permit(:name, :phone, ...)
format ...
else
format ...
end
提前谢谢大家 将
值添加到许可散列中,然后只运行一次update\u属性
只要确保这个字段是允许的
这只是一个你如何做到这一点的例子:
编辑:
params[:value] = value
如果嵌套在模型名称中,则:
params[:model][:value] = value
然后:
希望能对您有所帮助。我在回答中添加了一个示例Works完美无瑕!谢谢你的例子
@user.update_attributes(params.permit(:name, :phone, :value, ...)