2012-12-05 31 views
0

我有一個模型「啓動」,我有另一個模型「Categorie」。這兩個表是關聯的。複選框的形式與Ruby on Rails中的模型相關聯

我想調用Categoria的數據到Startup的形式,這個類別顯示一個複選框。在窗體啓動窗體內我有categorie_id。這是密碼

<%= form_for(@startup) do |f| %> 
    <% if @startup.errors.any? %> 
    <div id="error_explanation"> 
     <h2><%= pluralize(@startup.errors.count, "error") %> prohibited this startup from being saved:</h2> 

     <ul> 
     <% @startup.errors.full_messages.each do |msg| %> 
     <li><%= msg %></li> 
     <% end %> 
     </ul> 
    </div> 
    <% end %> 

    <div class="field"> 
    <%= f.label :description %><br /> 
    <%= f.text_area :description %> 
    </div> 
    <div class="field"> 
    <%= f.collection_select :round_id, Round.order(:name), :id, :name, include_blank: true %> 
    </div> 
    <div class="field"> 
    <%= f.label :category %><br /> 
    <%= f.text_field :category_id %> 
    </div> 

    <div class="field"> 
    <%= f.collection_select :country_id, Country.order(:name), :id, :name, include_blank: true %> 
    </div> 


    <div class="actions"> 
    <%= f.submit %> </div> <% end %> 

如何使用複選框在表單中顯示類別數據?

任何想法。

pdt:我的英語非常糟糕。

+0

你想顯示所有可用的類別旁邊有一個複選框,當你提交表單時,它保存'@ startup'與類別關聯? (如果你願意,我可以用法語) – MrYoshiji

+0

是的,我需要它(我會說西班牙語)。任何想法我該怎麼做? –

+0

好的首先要知道:一個Startup可以有多個分類嗎? (有沒有在模型啓動'has_many:categories'或'belongs_to:category'中設置?第二個問題,你需要複選框還是下拉菜單(帶有Categories選項的html選擇)? – MrYoshiji

回答

1

如果啓動只能有一個類別,你可以這樣做在您的視圖:

<div class="field"> 
    <%= f.label :category %><br /> 
    <%= f.collection_select :category_id, Category.all, :id , :name %> 
</div> 

這將輸出一個包含所有類別的下拉菜單。確保類別模型具有屬性name

正如你所說,一個啓動屬於一個類別,所以使用單選按鈕(複選框在這裏爲倍數關係,意味着你可以選擇多個類別):

<div class="field"> 
    <% Category.all.each do |category| %> 
    <%= f.radio_button :category_id, category.id %> 
    <%= f.label :category_id, category.name %> 
    <% end %> 
</div> 

您可能需要添加<br />標籤和html選項使其看起來更好。

+0

謝謝很多,我只是每個人都找到了類似的答案。我如何顯示覆選框? –

+0

我更新了我的答案;)希望這對你有用! – MrYoshiji