我有一个表单部分,需要根据从调用者视图传递给它的局部变量的值来呈现remote_form_for或form_for。看起来像...

<% if ajax  %>
  <% remote_form_for @search, :url => {:action => :search_set, :controller => :searches, :stype => stype} do |f| %>
  <% else %>
    <% form_for @search, :url => {:action => :search_set, :controller => :searches, :stype => stype} do |f| %>
    <% end  %>


显然,我在附近遇到语法错误,因为它期望“结束”。

什么是正确的方法?

最佳答案

你可以做一个辅助方法

def form_or_remote_form_for object, *opts, &proc
  if ajax
    remote_form_for object, *opts, &proc
  else
    form_for object, *opts, &proc
  end
end


然后在您看来

<% form_or_remote_form_for @search, :url => {:action => :search_set, :controller => :searches, :stype => stype} do |f| %>

关于ruby-on-rails - rails条件表单/remote_form,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2976297/

10-11 11:09