2011-11-11 16 views
2

ネストされたモデル(:admin accepts_nested_attributes_for :account_setting)からのチェックボックスがいくつかあります。デフォルトでは、チェックボックスのラベルはモデルの属性から生成されます。しかし、私は、ロケールフォルダに格納するカスタムラベルをキー値のペアとして使用したいと思います。Formtasticを使用してカスタムラベルをチェックボックスに割り当てます。

これは、コードで

 

= semantic_form_for(resource, :as => resource_name, :url => registration_path(resource_name), :validate => true, :html => { :method => :put }) do |f| 
    = f.input :email 
    = f.inputs :receive_email_digest, :as =>:check_boxes, :for => :account_setting, :label => 'My custom label' 
 

そして、それは動作しません。私は:input_html, :member_labelを試しました。

これはformtastic supporですか?それともハックする必要がありますか?

答えて

1

inputsはフィールドセットです。あなたは、formtasticに、1つのリスト項目と入力、:receive_email_digestでフィールドセットと順序付きリストを作成するように指示しています。これはブール値です。 :asは実際には何の効果もありません。:check_boxeshas_manyの関連です。単一の入力を持つ2つのfieldsetのそれぞれをレンダリングします

= semantic_form_for(resource, :as => resource_name, :url => registration_path(resource_name), :validate => true, :html => { :method => :put }) do |f| 
    = f.inputs do 
    = f.input :email 
    = f.inputs :for => :account_setting do 
    = f.input :receive_email_digest, :label => 'My custom label' 

はあなたのような何かをしたいです。それともさえ:

= semantic_form_for(resource, :as => resource_name, :url => registration_path(resource_name), :validate => true, :html => { :method => :put }) do |f| 
    = f.inputs "Email Settings" do 
    = f.input :email 
    = f.semantic_fields_for :account_setting do |ff| 
     = ff.input :receive_email_digest, :label => 'My custom label' 

ここのための意味領域は、単に範囲と出力すべきでない任意のマークアップです。

これらの両方とも、リソース名がリソースの下線付きの名前である場合は、チェックボックスのラベルにen.formtastic.labels.<resource_name>.account_setting.receive_email_digestを使用します。これらのキーの生成方法については、the formtastic sourceを参照してください。

+0

第2の溶液が働いた。ありがとうございました。 – Rahul

関連する問題