这段代码很好地创建了新的模型,但是当它应该更新模型时,它似乎什么也没做。
Connection: keep-alive
答案 0 :(得分:1)
Model.exists?
并没有阻止,但是你只给了一个。这意味着您的代码等同于:
update_all
所以当然更新永远不会发生。你的阻止真的应该是@update.save
的身体。此外,@update
直接更新数据库,因此无需调用if Model.exists?(:s => params[:s], :img => params[:image])
@update = Model.where(:s => params[:s], :img => params[:image])
@update.update_all({num: params[:num], url: params[url].values[0]})
else
@model = Model.new(s: params[:s], img: params[:image], num: params[:num], url: params[url].values[0])
@model.save
end
(无论如何都会失败,因为save
是关系而不是模型实例):
{{1}}
感谢Athar提醒{{1}}。