問題タブ [nested-form-for]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
4520 参照

ruby-on-rails - ネストされた属性の検証エラーにアクセスするにはどうすればよいですか?

上記は私のフォームのスニペットです。記事の検証、つまり:author、:titleのvalidates_presenceにアクセスできますが、たまたま写真であるnested_attributesに設定した検証にアクセスできません。エラーメッセージを表示する方法についてのアイデアはありますか?

0 投票する
1 に答える
82 参照

ruby-on-rails-4 - ネストされた属性と params.require エラー

私はRuby on Rails、特にフォームをネストするのが初めてです。私は著者と本を同じ形式で作成しようとしていますが、それらの間に多対多の関係があることを知っています.私のコードを以下に示します. book.rb

著者.rb:

talk.rb

book_controller.rb

books\new.html.erb

私がエラーとして得たもの

BooksController#create による HTML パラメーターとしての処理: {"utf8"=>"✓", "authenticity_token"=>"qpGng8tOiC/B5VX2tphuhAe+Wq1vx7it1vEO6XmwZmI=", "book"=>{"title"=>"booooooooooooook", "authors_attributes "=>{"0"=>{"f_name"=>"auuuuuuuuuuuuuuuuuuuthor"}}}, "commit"=>"Submit"} 許可されていないパラメーター: authors_attributes

0 投票する
1 に答える
1173 参照

ruby-on-rails-4 - 内部に has_many と has_one がネストされたネストされたフォーム

私は本質的にこの投稿と同じ問題に遭遇していますが、状況は少し異なります: has_many ネストされたフォームと has_one ネストされたフォーム

しかし、他の誰かがその投稿で言及したように、提供された回答は問題を解決しません。

Invoice has_many items と各 Item has_one Modifier の関係が設定されています。私は単一の form_for Invoice を作成しようとしています。これを使用して、それぞれにモディファイアを使用して多くのアイテムを作成できます。

モデル


コントローラ


ビュー(haml)

何が起こっているのかを確認しましょう。ネストされた has_one 関係を構築するために、ネストされたフィールド パーシャルで Item を構築し、has_one Modifier を構築できるようにします。これは、Rails では、has_one 関係で「build_something」を明示的に呼び出す必要があるためです (通常、これはコントローラーの new で呼び出されますが、誰かが New Item ボタンをクリックした場合にのみビルドしたい)。新しい請求書を作成する場合、このコードは完全に機能します。コンソールを確認すると、関係が作成されていることがわかり、Modifier が正常に作成されたことを確認できます。

しかし、請求書の編集に戻ると、cocoon は私が既に修飾子を持っていることを認識しているため、パーシャルを 1 回呼び出して、単一の修飾子に必要な fields_ を作成します。これらのフィールドは空です。ただし、cocoon はその部分をレンダリングするため、新しい修飾子を使用して新しいコードを構築し、フィールドを空白に設定しているため、これは理にかなっています。モディファイヤを適切に保存したら、パーシャルに移動し、2 つのビルド呼び出しを削除して、保存されたモディファイヤ情報を適切に表示する編集ページを表示できるため、これが発生していることを確認できます。

もちろん、ビルド呼び出しを削除したので、フォームは私が作成した修飾子を保存しなくなりました。基本的に、新しい Modifier をビルドするにはビルド呼び出しが必要ですが、それらを表示したい場合はそこに置くことができません。

誰でもこの状況の解決策を持っていますか? 複数のスタック オーバーフローに関する質問を見つけましたが、いずれもこの問題を解決していません。

0 投票する
0 に答える
87 参照

ruby-on-rails - ネストされたフォームは params に空のハッシュを返します

こんにちは、これは奇妙です。私は 3 つのモデルを持っています。

そして私はビューテンプレートを持っています

しかし、私のコントローラーでは、すべてが空になります。

私が間違っていることと、deal_items_attributes ハッシュに deal_menu_prices_attributes がありません。私はこのようなものを期待しています