2011-09-18 66 views
8

以下是edit.html.erb中無法使用的一段代碼。代碼的目的是填寫表單進行編輯。集合用於選擇是和否。如何使用以下選項將收藏集設置爲當前的「有效」值?如何在simple_form中設置集合中的當前值

<%= simple_form_for @category do |f| %> 

    <%= f.input :name, :disabled => true, :required => false %> 
    <%= f.input :description %> 
    <%= f.input :active, :collection => ['Yes', 'No'], :selected => f.active %> 
    <%= f.button :submit %> 
<% end %> 

錯誤說active當前不是f.input中的一個方法:active,:collection。

回答

13

承擔類別active屬性是一個布爾值,嘗試:

:selected => (@category.active? ? 'Yes' : 'No') 
+0

它沒有工作。 「活動」集合僅顯示「是」,即使活動也是錯誤的。謝謝。 – user938363

+0

「active」屬性是一個布爾值嗎?它會更有意義,因爲它是一個布爾值,但如果它是一個字符串,然後嘗試':selected =>(@ category.active =='Yes'?'Yes':'No')' – James

+0

是的,active是一個布爾值。 – user938363