【发布时间】:2016-06-15 19:31:31
【问题描述】:
我有一个已调用的国家/地区列表 - 并已解析为以下格式:
{"Countries"=>[{"Name"=>"ABKHAZIA", "IsoCode"=>"AB", "HasTown"=>"I"}, {"Name"=>"ANGUILLA", "IsoCode"=>"AI", "HasTown"=>"I"}, {"Name"=>"ANTIGUA", "IsoCode"=>"AG", "HasTown"=>"I"}, .... {"Name"=>"ZIMBABWE", "IsoCode"=>"ZW", "HasTown"=>"I"}]}
我想用这些数据填充一个下拉列表。我用来创建下拉框的代码是:
def country_selection_input options = {}
options.reverse_merge!(
:attribute => :country_iso,
:collection => transaction_form.get_countries,
:input_html => {},
:prompt => 'please select',
:label => 'To Where'
)
这给了我一个下拉框,其中包含一个请选择提示和一个仅包含一个单词的列表:国家。
数据在那里 - 但我不知道如何将其放入下拉列表 - 我确信我错过了一些简单的东西。 我试过了
:label_method => :Name,
但得到一个错误信息
undefined method `Name' for #<Array:0x007fc385cecbb0>
这可能会变成一个菜单,因为我想根据所选国家/地区采取行动 - 但是 - 这是第一步 - 让列表起作用。
【问题讨论】:
-
能否提供所需下拉框的示例?您希望那里有哪些价值观?谢谢。
标签: ruby-on-rails arrays ruby json drop-down-menu