Ruby on rails Rails:使用Decoder::Countries[:US].states,用美国各州和缩写填充选择列表
大家晚上好 我试图在rails视图中使用Decoder::Countries动态填充select_标记调用以生成列表。我的问题是,我无法得到我需要的格式的选项 语法:Ruby on rails Rails:使用Decoder::Countries[:US].states,用美国各州和缩写填充选择列表,ruby-on-rails,ruby,arrays,sorting,hash,Ruby On Rails,Ruby,Arrays,Sorting,Hash,大家晚上好 我试图在rails视图中使用Decoder::Countries动态填充select_标记调用以生成列表。我的问题是,我无法得到我需要的格式的选项 语法: Decoder::Countries[:US] 返回美国各州的哈希值,格式为: "AL" => "Alabama" 因此,在视图中,这样做: select_tag :tag_name, options_for_select(Decoder::Countries[:US].states.sort) 生成如下所示的选择列表
Decoder::Countries[:US]
返回美国各州的哈希值,格式为:
"AL" => "Alabama"
因此,在视图中,这样做:
select_tag :tag_name, options_for_select(Decoder::Countries[:US].states.sort)
生成如下所示的选择列表:
<select name="tag_name" id="tag_name">
<option value="Alaska">AK</option>
<option value="Alabama">AL</option>
etc...
<select name="tag_name" id="tag_name">
<option value="al">Alaska</option>
AK
艾尔
等
我需要的是这样的输出:
<select name="tag_name" id="tag_name">
<option value="Alaska">AK</option>
<option value="Alabama">AL</option>
etc...
<select name="tag_name" id="tag_name">
<option value="al">Alaska</option>
阿拉斯加州
现在,我知道追加.sort会将散列转换为数组。我如何让它显示我需要的输出,或者我需要如何将其备份到控制器中
谢谢。反转散列行吗
select_tag :tag_name, options_for_select(Decoder::Countries[:US].states.invert)