ActiveScaffold url_options

时间:2012-11-28 16:27:05

标签: ruby-on-rails activescaffold

我是Ruby和Rails的新手,我正在尝试对使用activescaffold为记录生成Show,Edit和Delete链接的页面进行修改。我遇到的问题是我正在查看的页面是由activescaffold自动生成的链接,我只需要更改删除链接转到另一个页面,我可以在其中显示一条消息,说明您正在删除“选项blah blah“,你确定要这么做吗?并给他们一个取消和确定按钮。

我目前的问题是我不知道在哪里查找链接的生成位置,因此我无法定位新页面。

以下是创建链接的代码

<table cellpadding="0" cellspacing="0">
<tr>
<td class="indicator-container">
  <%= loading_indicator_tag(:action => :record, :id => record.id) %>
</td>
<% active_scaffold_config.action_links.each :record do |link| -%>
  <% next if controller.respond_to? link.security_method and !controller.send(link.security_method) -%>
  <td>
  <% if record.class.statused? and record.disabled? -%>
      <%= link.action.to_sym == :enable ? render_action_link(link, url_options) : "" -%>
  <% else -%>
    <%= (record.authorized_for?(:action => link.crud_type) and link.action.to_sym != :enable) ? render_action_link(link, url_options) : "" -%>
  <% end -%>  
  </td>
<% end -%>

感谢您对此事的任何帮助。

1 个答案:

答案 0 :(得分:0)

这个答案并非特定于ActiveScaffold,但在Rails 3.2中,destroy链接生成为

<%= link_to 'Destroy', foo_instance, method: :delete, data: { confirm: 'Are you sure?' } %>

这会导致链接具有data-confirm属性,从而实现您想要的效果。你能将它添加到ActiveScaffold视图吗?

更新(Rails 2):

jQuery支持data-confirm属性(而不是原型),所以如果你在Rails 2应用程序中使用jQuery,它可能“正常工作”。否则,您可以直接在要确认的链接上添加javascript。 url_options的{​​{1}}参数看起来很多 - 也许它会接受任意html属性(如Rails render_action_link所做的那样),例如。

link_to