問題タブ [nested-attributes]
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.
ruby-on-rails-3 - Railsフォームでネストされた属性の明示的な数を表示する
与えられた 3 つのモデル:
- 書類
- 資産
- 資産カテゴリ
ドキュメントはアセットに対して入れ子になった属性を受け入れ (ドキュメントには多くのアセットがあります)、アセットはアセット カテゴリに属します。
アセット カテゴリごとにアセット属性のフィールドを表示したいと考えています。
私は現在、次のようにこれを達成しています。コントローラ:
ビュー (この例では Formtastic が提供するセマンティック_フィールド_for メソッドを使用していますが、これは fields_for のシン ラッパーにすぎません):
これに対するよりクリーンなアプローチはありますか?私は一時変数 i があまり好きではありません。
asp.net - 複数のモデルでasp.netmvcフォームを支援する
私はこれを行う方法を理解するのに少し問題があります。
これが私のシナリオです
彼のためにをUser
作成する必要があります。IncomeDeclaration
Business
しかし、彼のビジネスが行われているそれぞれIncomeDeclaration
の多くが含まれています。ActivityIncomeDeclarations
Activity
私のフォームには、新しいIncomeDeclaration
フィールドとActivityIncomeDeclarations
(明らかにそれに関連するIncomeDeclaration
)のフィールドを含めたいと思います。
rubyonrailsには「accepts_nested_attributes_for」というメソッドがあることを知っています。tgatはおそらくここで私を助けてくれるでしょう。
助けてください!
ruby-on-rails-3 - Rails: ネストされたオブジェクトのラジオ ボタンの選択
私はこの単純な選択タスクで立ち往生しています。私はこのモデルを持っています:
新しい質問を作成する際に、 だけでなく 3 つのオブジェクトの もネスト形式で指定し、content
どれがQuestion
答えかをラジオ ボタンで選択したい。コントローラーのアクションには、次のものがあります。content
Answer
correct
new
これはフォームコードです:
問題は、このコードが異なる名前の 3 つのラジオ ボタンを生成することです。複数の正解を選択できますが、これは正しい動作ではありません。3 つのラジオ ボタンの名前はquestion[choices_attributes][0][correct]
、question[choices_attributes][1][correct]
およびquestion[choices_attributes][2][correct]
です。
問題は、正しい答えを 1 つだけ選択するために、同じ名前のラジオ ボタンを 3 つ作成するにはどうすればよいかということです。この方法でアクションにparams
保存するために、正しい配列を作成するにはどうすればよいですか:create
どうもありがとうございました!
ruby-on-rails - RubyonRails-accepts_nested_attributes_forのbefore_save計算
「多くの」請求書アイテムがある請求書モデルがあります。請求書を作成/編集できるフォームがあります。このフォームは、請求書アイテムのネストされた属性を受け入れます。
私の請求書モデルには、計算フィールド(請求書アイテムの「金額」の合計)である「total_amount」フィールドがあります。
請求書の作成時または更新時にこの金額を計算したいのですが。請求書モデルのbefore_saveイベントでこれを実行しようとしています。以下のコードはほぼ機能しますが、保存される合計は常に1ステップ遅れています。つまり、合計$ 20の請求書があり、この請求書を編集して請求書アイテムを合計$ 15に変更し、請求書を保存した場合、合計は変更されません。同じ請求書を開いてからもう一度保存すると、合計が正しく更新されます。
合計を計算する以下の行は、データベースにすでに保存されているラインアイテムにアクセスしており、変更されたばかりで保存されようとしているラインアイテムにはアクセスしていないと想定しています。しかし、それらにアクセスする方法がわかりません。
どんな助けでも大歓迎です。
ruby-on-rails - ネストされたモデルと親の検証
私は2つのモデルを持っています。
- Parent
has_many Children
;
- Parent
accept_nested_attributes_for Children
;
検証を使用して、すべての親の子の存在を検証するため、子なしで親を保存することはできません。
検証が機能します。_destroy
次に、属性を介して子を破棄します。
そのため、ネストされたフォームを介してすべての子を破棄でき、検証に合格します。
実際には、を介して親から子を削除した後、_delete
リロードする前に children メソッドが破棄されたオブジェクトを返すため、検証に合格したために発生します。
バグですか?
質問は何ですか。質問はそれを修復するための最良の解決策です。私のアプローチは、 before_destroy フィルターを追加して、最後のフィルターChild
かどうかを確認することです。しかし、それはシステムを複雑にします。
ruby-on-rails - Rails での 1 対多のネストされた属性
これは質問ではありませんが、誰かが恩恵を受けることができれば幸いです。
1 対多のネストされた関連付けを作成または変更しようとするときは、配列を渡していることを確認してください。あなたが得ている場合
NoMethodError (未定義のメソッド `[]' for...
1対多のネストされた関連付けを使用している場合、これが問題になる可能性があります。このエラーを検索しても説明が見つからなかったので、他の人の開発をスピードアップするのに役立つかもしれません。
たとえば、私は Person モデルを持っています
新しい人物と関連付けられた person_image を作成するには、次のようにします。
{:image=>person_image} の周りの [] に注目してください。1対多の場合は、これが必要です。したがって、以下は機能せず、未定義のメソッド '[]' エラーが発生します。
また、私の意見では、このように入力に名前を付ける必要があります
[0] がないと機能しません。
私はRailsが初めてです。これが他の初心者に役立つことを願っています。誰かがこれを行うためのより良い説明またはより効率的な方法を持っている場合は、コメントに感謝します.
ruby-on-rails - Rails:特定の名前のネストされた属性を無視しますか?
この機能を Ryan Bates のネストされたモデル フォームのチュートリアルに基づいて作成すると、フォームを送信すると、次のデータ セットが送信されます。
どうすればよいかを理解する必要があるのは、new_questions
セクションを無視することです。追加できることはわかっていますがreject_if
、accepts_nested_attributes_for
含まれていてデータが事前に入力されている非表示のフィールドがあるため、空のフィールドに基づいて無視することはできません。
new_questions
では、私のサンプルデータでどのように無視できますか?
Rails 3.0.3 を実行しています
ruby-on-rails - Rails3データモデリングヘルプ-ネストされた属性が多数あります
私は3つのモデル(受信者、アワード、アナウンサー)を含むプロジェクトに取り組んでおり、アナウンサーが複数の受信者にアワードを発行する場合は、ネストされた属性が必要です。たとえば、アワードフォームには次の3つのことを実行する機能が必要です。
- 複数の受信者を追加できます(つまり、「受信者の追加」、「受信者の削除」)-ネストされた属性
- 新しいアワードを作成した後、アワードは受信者のプロファイルに投稿されます。
- @recipient.awardsおよび@announcer.awardsの将来のポーリングを有効にします
この問題を賢く解決する方法に関しては本当に苦労しています。次のデータ構造は理にかなっていますが、アワードフォームで「accepts_nested_attributes_for:recipients」を実行することはできません。手伝ってくれますか?よろしくお願いします。
クラスRecipient<ActiveRecord:: Base
- has_many:awards
- has_many:announcers、:through =>:awards
終わり
クラスアナウンサー<ActiveRecord::Base
- has_many:awards
- has_many:recipients、:through =>:awards
終わり
クラス賞<ActiveRecord::Base
- 所属する:announcer
- 所属する:受信者
終わり
ruby-on-rails - Rails、ネストされた複数の属性をRESTfullyに更新
属性の更新について質問があります。
ユーザーモデルと債務モデルがあります。特定のユーザー(users /:user_id / debts)に属するすべての債務を更新して、サイト上のリンクから支払い済み(ブール属性)としてマークされるようにするには、どうすれば安らかなアプローチをとることができますか?
ruby-on-rails - rails accept_nested_attributes_for と validations... Rails 2.3.11
私は2つのモデルを持っています
新しいグループを作成するときに、更新時にのみ機能するアクセス許可に関する一意の制約を取得できないようです。出力例を次に示します。ネストされた属性と一意の制約で検証を機能させるための最良の方法を知っている人はいますか?
サンプル出力
それが予想されます。ただし、同じ permissions_attributes でグループを 2 回作成しても、無効にはなりません。