2016-11-15 56 views
0

uniq的結果我有一個數據庫表payments與列付款,可以是現金,卡等。Rails的顯示在下拉

在我支付索引視圖我想添加一個過濾器,以濾除支付類型的結果。

最好的我想出迄今:

<%= f.select :PAYMENT_eq, options_from_collection_for_select(Payment.uniq, :ID, :PAYMENT, @q.PAYMENT_eq), {:include_blank => true}, {class: 'myselect'} %> 

顯示了用支付類型下拉。問題是它會爲每一行返回一個選項。例如,如果我使用付款類型現金進行10次付款,在下拉列表中我會看到10個選項現金。

我用於該過濾器的語法與用於過濾asssociations的過程相同,但事實並非如此。所以也許我過於複雜了,但我想不出任何其他解決方案。

我試過了Payment.uniq,但它不起作用。

我該如何解決?

回答

1

嘗試採摘付款並把它們應用.uniq

如果你有在Payment模型重複不摘:id或從另一個表中選擇付款,如果你有PaymentTypePaymentMethod

<%= f.select :PAYMENT_eq, options_for_select(Payment.pluck(:PAYMENT).uniq, @q.PAYMENT_eq), {:include_blank => true}, {class: 'myselect'} %> 
+0

完美工作感謝! – Catmal