我在更新用户配置文件
时在f.Select中使用的数组 SEX = [["Male", 'M'],
["Female", 'F']]
我会使用哈希,但我根本无法使用精选的东西来工作。因此,我有一个选择"男性"one_answers"女性"的值的下拉列表,并且为用户变量:性别分配了" m"或" f"的值。现在,在显示轮廓时,我需要在此处输出性别为"键"(男性或女性,而不是m/f)。除了制作较大的get_sex和其他较大阵列方法外,我还能访问这些"钥匙"值,这些方法根本不会干?我可以在这里做什么?
您需要使用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"
考虑与options_for_select
助手一起使用哈希:
options_for_select({ "Male" => "M", "Female" => "F" }, "M")
可以在此处找到其他文档。
为了清楚起见,请在此处阅读文档。但是,就像Panmari所指出的那样,这就是要走的路。
为了使他的建议更加灵活,我建议您为男性和女性创建常数,并将其作为哈斯助手传递给选择的助手。