2012-02-14 21 views
0

たび私やることは、フォーム上のサブフィールドのいずれかが表示されません、次 formtasticでネストされたフォームを取得するにはどうすればよいですか?

= f.semantic_fields_for :transfers do |g| 

私はそれをsingularize場合

は、彼らが表示されるが、その後のモデルは :transferをどうするか何の手掛かりを持っていません。 accepts_nested_attributes_forが一致するように私は単数でしようとしましたが、どちらもうまくいかなかったのです。

取引:

has_many :transfers 
accepts_nested_attributes_for :transfers 

転送:

belongs_to :transaction 

ビュー:

= semantic_form_for [@user, @transaction], url: url, style: "width: inherit;" do |f| 
    = f.semantic_fields_for :transfers do |g| 
    = g.inputs do 
     = g.input :amount 
     %li 
     %label 
     = "(#{Transfer::TRANSFER_FEE.format :symbol} transaction fee will be added)" 
    = g.inputs do 
     %li 
     %label 
     Click 
     %input{ type: "image", value: "submit", style: "vertical-align: middle;", 
      src: "https://www.paypal.com/en_US/i/btn/btn_xpressCheckout.gif" } 
     or fill in your credit card information below 
    = g.inputs do 
     = g.input :first_name 
     = g.input :last_name 
     = g.input :card_type, as: :select, collection: [["Visa", "visa"], ["MasterCard", "master"], ["Discover", "discover"], ["American Express", "american_express"]] 
     = g.input :card_number 
     = g.input :card_verification 
     = g.input :card_expires_month, as: :select, collection: (1..12) 
     - year = Time.now.year 
     = g.input :card_expires_year, as: :select, collection: (year..(year+25)) 
    = f.inputs do 
    %li 
     %label 
     %input{ type: "submit", value: "Buy", name: "use_cc" } 
+0

入力ブロック(3行目)はsemantic_fields_forブロックの外にある必要がありますか? –

+0

そこにいる必要はありませんが、どちらにも影響しません。 – skeemer

+0

申し訳ありませんが、奇妙なことに私の質問に言いました。明確にするために、入力ブロックにsemantic_fields_forブロックをラップすると、効果はありませんか? –

答えて

0

問題は、私は転送オブジェクトを構築していなかったということでした。コントローラI 2行目を追加しなかった

@transaction = current_user.transactions.build 
@transaction.transfers.build