我正在使用Rails 3 / Bootstrap / JQuery UI。 我有一个创建操作,要求用户在提交之前输入一些参数。 我尝试过Javascript JQuery UI对话模式表单,但是没有使用已经编写的操作代码。 问题是用户不喜欢打开一个全新的窗口(然后不得不回击)
所以我想打开动作,但是在侧边栏中,而不是在新窗口中这样做。
在Rails 3中,最佳做法是什么?
添加更多说明。 我的意思是“动作”是一个模态对话框,我收集创建所需的参数。 我想将“模态对话框”放入侧边栏。 相反,现在,我打开“模态对话框”作为一个全新的窗口,然后用户单击“创建”,然后创建新对象。
我认为我的主要问题是 - 如何在侧边栏中打开“新窗口”?
添加了编辑: 以下是用户要按下的按钮的代码:(将Cat添加到现有客户端)
<%= link_to "New Cat", new_client_cat_path(@client), :class => "btn btn-primary btn-large" %>
现在,这是cats / new.html.erb:
<h2>New Cat</h2>
<%= render "form" %>
<%= link_to "Cancel", @client, :class => "btn btn-primary btn-large" %>
然后是cats / _form.html.erb:
<%= form_for [@client, @cat] do |f| %>
<%= f.error_messages %>
<%= f.submit @submit_label, :class => "btn btn-primary btn-large" %>
<% end %>
我想要的是“new.html.erb” - 让用户确定的表单 - 在侧边栏中弹出,而不是打开一个全新的窗口。我希望能够将“new.html.erb”放入位于主页面的小方框中。
答案 0 :(得分:0)
如果创建表单是静态的,请将其设置为on,然后单击使用javascript使其可见。使用
进行ajax调用以创建<%= form_for @model, :remote => true do |frm| %>
...
...
<% end %>
在动作中创建对象,并渲染:nothing =&gt;为true或仅更新所需页面的部分