我有一个像我更新用户个人资料时在f.select中使用的数组
SEX = [["Male", 'M'],
["Female", 'F']]
我使用了一个哈希,但是我无法使用精选内容使其工作。所以我有一个带有值的选择下拉菜单"男性"和"女性"并且它赋值为" M"或" F"用户变量:性别。现在,在显示个人资料时,我需要输出性别作为"键"在这里(男性或女性,不是M / F)。我怎样才能访问这些" key"除了为更大的数组方法制作巨大的get_sex和其他getter之外,还有什么值得干掉?我能在这做什么?
答案 0 :(得分:0)
考虑将哈希与options_for_select
助手一起使用:
options_for_select({ "Male" => "M", "Female" => "F" }, "M")
可以找到其他文档here。
答案 1 :(得分:0)
为了清楚起见,请阅读文档here。但就像panmari所指出的那样,这是最佳选择。
为了使他的建议更加灵活,我建议你为男性和女性创建常量,并将它们作为哈希传递给选择助手。
答案 2 :(得分:0)
您需要使用rassoc
方法https://ruby-doc.org/core-2.2.0/Array.html#method-i-rassoc
sex = [["Male", "M"], ["Female", "F"]]
sex.rassoc("M")
=> ["Male", "M"]
sex.rassoc("M").first
=> "Male"