我在将表单的两个参数传递给控制器时遇到问题。我希望如果对象的erb.js
失败,则不会触发update
模板。
我在操作结束时添加了return
,但视图仍被触发。
她是我控制器的一部分,我认为它负责操作视图:
if @object.update(some_params)
...
respond_to do |f|
f.html {redirect_to some_path_here}
f.js
end
end
return
答案 0 :(得分:1)
之所以会这样,是因为根据convention over configuration Rails
,如果未明确指定,则会自动呈现操作视图。
为了避免呈现,如果@object
尚未成功更新,则其中之一是设置head:
if @object.update(some_params)
...
respond_to do |f|
f.html {redirect_to some_path_here}
f.js
end
else
head :unprocessable_entity
end