我正在为我的应用创建一个管理页面,它只显示我数据库中的所有内容。我希望其中一个表头被删除,表数据是一个单选按钮,单击并按回车键时,从我的表(和数据库)中删除该列。
我有从调用资源创建的DELETE路由:routes.rb中的url:
resources :urls
# DELETE /urls/:id(.:format) urls#destroy
我的网址控制器中有Destroy方法:
def destroy
id = params[:id]
url = Url.find(id)
url.destroy
end
在我的admin.html.erb中,我有以下代码:
<div class="webpage-name"> Admin Page </div>
<table class="table table-hover table-striped">
<thead>
<tr>
<th> id </th>
<th> link </th>
<th> random_string </th>
<th> clicks </th>
<th> delete </th>
</tr>
</thead>
<tbody>
<% @urls.each do |url| %>
<tr>
<td><%= url.id %></td>
<td><%= url.link %></td>
<td><%= url.random_string %></td>
<td><%= url.clicks %></td>
<td><%= form_tag(urls_path, method: "delete")%><%= url.radio_button%></td>
</tr>
<% end %>
</tbody>
</table>
</div>
我想要实现的是最终的<td>
。我创建了一个form_tag
,用urls_path
将信息发送到method: "delete"
。但是现在我如何实际制作一个单选按钮,复选框或任何允许我选择许多选项然后按Enter键并删除它们的东西?另外,我对此非常陌生,所以我不确定我的form_tag
语法是否正确并且做了我认为它正在做的事情。
当我从代码中删除<%= url.radio_button%>
时,我能够正常查看管理页面,并且只有一个空的删除列。
答案 0 :(得分:0)
尝试在单击单选按钮上提交表单,如
<% form_tag(url_path(url), method: "delete") do %>
<%= radio_button_tag :remove, url.id, false, :onchange =>"this.closest('form').submit();" %>
<% end %>
http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html#method-i-radio_button_tag 我不确定这是否可行或不尝试。