2013-02-19 58 views
0

我覺得我濫用的form_for(和simple_form_for)更新記錄的一個隱藏屬性。這裏有一個例子:如何用link_to替換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

+0

而且,除了答案,使之成爲'遠程:TRUE'形式,使之就地切換。 – 2013-02-19 03:11:13

回答

1

嘗試使用:

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

你先生,是勝利者! – SinFulNard 2013-02-19 05:33:31

2

是,使用

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

有趣的是,鏈接是有效的,我在我的日誌中看到這個:開始PUT「/ presents/9?ordered = 1」但是可惜,屬性沒有更新。 – SinFulNard 2013-02-19 03:39:38