我的 Rails 3.2.3 表单中有以下 collection_select 逻辑来选择状态并按名称排序。
<%= collection_select(:user, :state_id, State.order('name'), :id, :name) %>
我有一个国家模型,其中 ID 在国家模型中。我的用户模型有 country_id 和 state_id。用户属于国家和州。国家有很多用户,也有很多州。国家属于国家。
我只想为特定国家/地区选择州。我想将 User 模型中的 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;
}
我也尝试使用选项标签,但它没有改变任何东西。
任何帮助,将不胜感激。