0

我正在使用 Rails 3/Bootstrap/JQuery UI。我有一个创建操作,要求用户在提交之前输入一些参数。我尝试了一个 Javascript JQuery UI 对话框模态表单,但它没有使用已经编写的操作代码。问题是用户不喜欢打开一个全新的窗口(然后不得不点击返回)

所以我想打开动作,但在侧边栏中进行,而不是在新窗口中进行。

Rails 3 中的最佳实践是什么?

添加更多说明。我的意思是“动作”是一个模态对话框,我在其中收集创建所需的参数。我想把那个“模态对话框”放到边栏中。相反,现在,我将“模态对话框”作为一个全新的窗口打开,然后用户单击“创建”,并创建了新对象。

我认为我的主要问题是 - 我如何打开“侧边栏中的新窗口”?

添加了编辑:这是用户要按下的按钮的代码:(将猫添加到现有客户端)

<%= 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”放入位于主页上的小盒子中。

4

1 回答 1

0

如果创建表单是静态的,则已经拥有它,然后单击使其使用 javascript 可见。使用 ajax 调用创建

<%= form_for @model, :remote => true do |frm| %>
    ...
    ...
<% end %>

在操作中创建对象,并渲染 :nothing => true 或仅更新所需的页面部分

于 2012-11-05T13:27:25.403 回答