2012-06-26 115 views
0

我在Rails 3.2.3表單中選擇了以下collection_select邏輯來選擇狀態並按名稱排序。使用collection_select選擇記錄並使用CSS進行格式化

<%= collection_select(:user, :state_id, State.order('name'), :id, :name) %> 

我有一個國家模型,其中ID是在狀態模型。我的用戶模型有country_id和state_id。用戶屬於國家和州。國家有許多用戶,並有許多國家。國家屬於國家。

我想只爲特定的國家選擇國家。我想要將用戶模型中的country_id與State模型中的country_id相匹配。我想過使用State.where('something;)。order('name')。但是我不知道如何爲此編寫SQL代碼。我正在使用PostgreSQL數據庫。我發現的例子是用於其他數據庫的。

第二個問題涉及列表的外觀。我想改變背景顏色以及字體顏色以匹配我網站上的輸入字段。我試了下面的代碼,但無法讓它工作。

<%= collection_select(:user, :state_id, State.order('name'), :id, :name, {:class=>'collection-select-class'}) %> 

我的CSS代碼是:

.collection-select-class { 
    background-color: #333333; 
    color: @yellow; 
} 

我也使用選項標籤嘗試,但它並沒有改變任何東西。

任何幫助,將不勝感激。

回答

0

對於這個問題,我引用來回答下面的鏈接的CSS相關的部分:

https://stackoverflow.com/a/1947675

總之,你需要添加空散列{}以使其工作。所以它會是這樣的:

<%= collection_select(:user, :state_id, State.order('name'), :id, :name, {}, {:class=>'collection-select-class'}) %> 

希望這有助於!

相關問題