如何在侧栏中打开新的Rails窗口

时间:2012-11-05 12:31:14

标签: ruby ruby-on-rails-3 twitter-bootstrap

我正在使用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”放入位于主页面的小方框中。

1 个答案:

答案 0 :(得分:0)

如果创建表单是静态的,请将其设置为on,然后单击使用javascript使其可见。使用

进行ajax调用以创建
<%= form_for @model, :remote => true do |frm| %>
    ...
    ...
<% end %>

在动作中创建对象,并渲染:nothing =&gt;为true或仅更新所需页面的部分