如何用link_to替换form_for?

时间:2013-02-19 02:52:29

标签: ruby-on-rails simple-form

我觉得我在滥用form_for(和simple_form_for)来更新记录的单个隐藏属性。这是一个例子:

<%= simple_form_for :present, url: present_path(list_item), method: 'put' do |f| %>
    <%= f.hidden_field :ordered, value: "1" %>
    <%= f.button :submit, "ordered", class: "btn btn-mini" %>
<% end %>

基本上,这会显示一个按钮,用户可以按此按钮将present标记为“已订购”。在后端,它会将属性:ordered更新为当前1的值list_item

我觉得这是骗子,因为它本身并不合适form。我宁愿只有一个link_to,点击后会更新属性。

我认为link_to需要method:知道更新属性。

是否可以用simple_form_for替换我的link_to

2 个答案:

答案 0 :(得分:2)

是,使用

link_to 'Ordered', present_path(list_item, ordered: 1), method: :put

答案 1 :(得分:1)

尝试使用:

link_to 'Ordered', present_path(list_item, present: {ordered: 1}), method: :put