2017-01-23 97 views
2

如何做下拉選擇導軌形式?如何下拉選擇導軌形式

我試圖

<div class="field"> 
    <%= f.label :car_id %> 
    <%= select("car", "car_id", @cars) %> 
    </div> 

    <div class="field"> 
    <%= f.label :firstname %> 
    <%= f.text_field :firstname %> 
    </div> 

    <div class="field"> 
    <%= f.label :lastname %> 
    <%= f.text_field :lastname %> 
    </div> 

    <div class="field"> 
    <%= f.label :dateofbirth %> 
    <%= f.date_select :dateofbirth %> 
    </div> 

,但我在這行得到這個錯誤

undefined method `empty?' for nil:NilClass 

<%= select("car", "car_id", @cars) %> 

回答

1

嘗試

<%= f.select :car_id, @cars.collect { |car| [car.name, car.id] } %> 

您需要設置@cars實例變量的控制方法上面的代碼行工作。

我假設car有一個name字段。將name替換爲您的Car模型的字段,該字段足夠用於標籤。

對於select列表中的每個選項,name將被設置爲標籤,而id將被設置爲value

如需更多信息,閱讀文檔here

+0

對於downvoter:能否請你告訴我,這有什麼錯?我的回答我很想知道。 –

+0

謝謝你的回答我試過但沒有工作,所以btw不是我誰下了投票:) – user3348410

+0

你嘗試我的答案後得到什麼錯誤? –