2017-09-13 5 views
1

評価の対象となる国のリストを表示する必要があります。国はすでに、その後評価されている場合は、ユーザーことはできない「unrate」それ選択した条件に空白のオプションを含めます

# countries index 
= render @countries 

# countries/_country 
= form_for country do |f| 
    = f.select :rating, 
    Rating.options, 
    include_blank: "False if country is rated. True otherwise" 

私はオプションをinclude_blankするPROCを渡そうとしましたが、それは私がどのように見えるのオプションを計算するためにヘルパーを使用することができます

動作しませんでしたこれは:

def rating_options(country) 
    if country.rating.present? 
    Rating.options 
    else 
    [""] + Rating.options 
    end 
end 

条件の選択タグに空白のオプションを含めるより良い方法はありますか?

答えて

1

あなたはinclude_blankオプションに任意のヘルパーメソッドや条件

= form_for country do |f| 
    = f.select :rating, 
    Rating.options, 
    include_blank: f.object.rating.empty? 
+0

ありがとう、解決策は非常に簡単ですを渡すことができます - 私はinclude_blankインラインを計算することができます!私は国の変数を使用することもできます - 'include_blank:country.rating.blank?'何らかの理由で私はラムダやヘルパーが必要だと思った – Hirurg103

関連する問題