gpt4 book ai didi

ruby - Rails 3 如何处理常量

转载 作者:太空宇宙 更新时间:2023-11-03 18:26:44 24 4
gpt4 key购买 nike

我在 venue.rb 中有一个名为 PAYMENT_METHODS 的常量。

PAYMENT_METHODS = ['Visa', 'MasterCard', 'American Express', 'Diners', 'JCB', 'Bankomat', 'sodexo', 'MA-Gutscheine']

您可以在表单中选中/取消选中付款类型(payment_options 是一个整数):

<%= hidden_field_tag "venue[payment_options][]", nil %>
<% Venue::PAYMENT_METHODS.each do |category| %>
<%= check_box_tag "venue[payment_options][]", category %>
<%= label_tag category %>
<% end %>

现在我想保存选择,但每个复选框的值都是付款选项的名称。我想我必须以某种方式添加 key 并仅存储 key 。

如何设置 key 并将集合保存到数据库?

提前致谢

最佳答案

使常量成为散列或数组,例如

PAYMENT_METHODS = {'Visa' => 1, 'MasterCard' => 2, 'American Express' => 3, 'Diners' => 4, 'JCB' => 5, 'Bankomat' => 6, 'sodexo' => 7, 'MA-Gutscheine' => 8 }

现在这些将采用您可以传递给 options_for_select 的格式 http://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html#method-i-options_for_select .

如果您(真的)想要复选框,数组就可以了,只需循环使用 PAYMENT_MTHODS.each_index do |index| 来获取迭代器即值,然后使用 PAYMENT_METHODS[索引].

我一直觉得散列 key 是显示在列表中的部分很奇怪,但我认为值是与选项值关联的值是有道理的:-)。

关于ruby - Rails 3 如何处理常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9761368/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com