我有2个表格,都使用信用卡处理,这意味着他们都有相同的结账流程。这些结账表格在这两种表格中都是部分的。
所以我想要实现的是在simple_form_for标记中有一个条件POST URL语句,如下所示
<%= simple_form_for :order, url: task_path(params[:task_id], params[:id] if condition else something_else ) do |f| %>
是否有可能在Rails中实现这一目标。
答案 0 :(得分:2)
在调用form_for:
之前先计算网址<%
if <some condition>
url = "/some/url"
else
url = "/another/url"
end
%>
<%= simple_form_for :order, url: url do |f| %>
这更容易理解/更改。
更新:因为form_for已经有两个url选项,具体取决于相关对象是否已被保存(即.new_record的值?),那么你可能需要让你的if-else逻辑也考虑到这一点。