模式
某种恒定的散列:
HASH_NAME = {
0 => "Choose:",
1 => "On-Campus Recruiting - CSO",·
2 => "CSO Staff Referral",
3 => "Faculty Contact",·
4 => "Career Day",·
5 => "CSO Summer Job Listing",·
6 => "Alumni Contact",·
7 => "Personal Contact",·
8 => "Other"·
}
- 视图
<%= f.input :some_field, :collection => Model::HASH_NAME.sort.map {|k,v| [v,k]} %>
这将输出很好用select值作为哈希键选择,选择名称为哈希值,比如:现在
<select id="form_application_job_source" class="select required" name="form_application[job_source]">
<option value="0">Choose:</option>
<option value="1">On-Campus Recruiting - CSO</option>
<option value="2">CSO Staff Referral</option>
<option value="3">Faculty Contact</option>
<option value="4">Career Day</option>
<option value="5">CSO Summer Job Listing</option>
<option value="6">Alumni Contact</option>
<option selected="selected" value="7">Personal Contact</option>
<option value="8">Other</option>
</select>
,如果您选择了说 - 从下拉菜单中“校园招聘CSO” ,将被存储的值是:1
显示它在视图中为“校园招聘 - CSO”你会在模型中自己创建一个小的返回功能,像这样:
def return_paper_type
HASH_NAME[id]
end
在视图中,它会是这样的:<%= @instancevariable.return_paper_type %>
你可以发布你最终使用的代码吗? – ardochhigh 2013-07-06 15:04:02
当然:https://gist.github.com/mbhnyc/5944282 – MBHNYC 2013-07-07 17:43:30