Rails 在下拉列表中显示独特的结果
Rails show uniq results in dropdown
我有一个数据库 table payments
有一个 PAYMENT 列,可以是现金、信用卡等。
在我的支付索引视图中,我想添加一个过滤器以按支付类型过滤结果。
目前为止我最好的是:
<%= f.select :PAYMENT_eq, options_from_collection_for_select(Payment.uniq, :ID, :PAYMENT, @q.PAYMENT_eq), {:include_blank => true}, {class: 'myselect'} %>
显示带有付款类型的下拉菜单。问题是它 returns 每行的一个选项。例如,如果我有 10 笔付款类型为现金,在下拉列表中我会看到 10 选项现金。
我用于该过滤器的语法与我用于过滤器关联的语法相同,而这不是。所以也许我过于复杂了,但我想不出任何其他解决方案。
我尝试了 Payment.uniq 但它不起作用。
我该如何解决?
尝试提取付款并对其应用 .uniq
如果您在 Payment
模型中有重复项,请不要采纳 :id
或 select 来自另一个 table 的付款,如果您有 PaymentType
或PaymentMethod
<%= f.select :PAYMENT_eq, options_for_select(Payment.pluck(:PAYMENT).uniq, @q.PAYMENT_eq), {:include_blank => true}, {class: 'myselect'} %>
我有一个数据库 table payments
有一个 PAYMENT 列,可以是现金、信用卡等。
在我的支付索引视图中,我想添加一个过滤器以按支付类型过滤结果。
目前为止我最好的是:
<%= f.select :PAYMENT_eq, options_from_collection_for_select(Payment.uniq, :ID, :PAYMENT, @q.PAYMENT_eq), {:include_blank => true}, {class: 'myselect'} %>
显示带有付款类型的下拉菜单。问题是它 returns 每行的一个选项。例如,如果我有 10 笔付款类型为现金,在下拉列表中我会看到 10 选项现金。
我用于该过滤器的语法与我用于过滤器关联的语法相同,而这不是。所以也许我过于复杂了,但我想不出任何其他解决方案。
我尝试了 Payment.uniq 但它不起作用。
我该如何解决?
尝试提取付款并对其应用 .uniq
如果您在 Payment
模型中有重复项,请不要采纳 :id
或 select 来自另一个 table 的付款,如果您有 PaymentType
或PaymentMethod
<%= f.select :PAYMENT_eq, options_for_select(Payment.pluck(:PAYMENT).uniq, @q.PAYMENT_eq), {:include_blank => true}, {class: 'myselect'} %>