問題タブ [multi-model-forms]

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 投票する
4 に答える
4081 参照

ruby-on-rails - マルチモデルフォームでerror_messages_forを使用するには?

アルバムとトラックの 2 つのモデルがあります。アルバムには多くのトラックがあり、トラックはアルバムに属します。

Railscasts のエピソード 197と同様に、アルバムの作成中に必要な数のトラックを作成できるようにしたいと考えています。ただし、Railscasts のエピソードとは異なり、Track フォームにはタイトルと説明の両方が含まれています (両方とも必須です)。

現在、フォームは次のようになっています。

フォームを空白で送信すると、フォームの上に次のエラー メッセージが表示されます。

これらのエラー メッセージはモデルに固有のものではなく、すべてページの上部にあり、モデルごとに 1 回だけ表示されます (両方のフィールドを空白のままにして、エラー メッセージが 1 回だけ表示されることに注意してください。どのトラックに固有のものでもありません)。 .


最初のトラック フィールドを生成するために、album_controller の新しいアクションに次の行を追加しました。2.times { @album.tracks.build }

私のフォームがどのように見えるかの要点は次のとおりです。

<%= f.error_messages %>トップを<%= error_messages_for @album %>(アルバムのメッセージのみを表示する) に置き換え、<%= error_messages_for track %>(各トラックに固有のエラー メッセージを表示する) を追加しようとしましたが、うまくいきません。これにアプローチする方法を知っている人はいますか?

ありがとう!

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

ruby-on-rails - パーシャルのaccepts_nested_attributes_forのAJAXアップデート

私の現在の作業環境はRails2.3.8です(私の会社がRails 3に移行しなかったさまざまな理由)。AJAX呼び出しを介してマルチモデルフォームの要素を更新しようとしています-ユーザーが他のフィールドを選択または入力する方法に応じて、特定のドロップダウンを置き換えるという考えです。

以前は、フォームベースではないパーシャルを使用してこれを機能させることができました。現在の問題は、パーシャルがform_forとfields_forに基づいている場合に、選択ドロップダウンのAJAX更新を再現することです。

次のテキストの壁で申し訳ありません-私はそれを可能な限り削減しようとしました(コード自体は私のテストサイトで機能します)。

Outbreakコントローラーでフォームビルダー要素を生成し、これをカテゴリpartialに渡してincident_formの代わりにするにはどうすればよいですか?

どんなポインタも素晴らしいでしょう:D

モデル

ビュー

_形

_outbreak_type_select

_category_select

update_select_menusを呼び出した後、incident_formを生成する方法

RJS

コントローラー

アウトブレイク

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

ruby-on-rails - マルチモデルビューレールでのHas_and_belongs_to_manyアソシエーションの使用

私はレールに不慣れで、景色に問題があるので、これが簡単な質問であるならすみません。ビュー内のhas_and_belongs_to_manyアソシエーションにどのように追加するのか疑問に思いました。

これが、次のモンゴイドドキュメントを含むモデルがある状況です。

と...

私が欲しいのは、テキストフィールドにプロジェクトの名前を書き込む機能を備えたPersonページです。プロジェクトが存在する場合は彼をプロジェクトに追加し、存在しない場合は彼という名前の新しいプロジェクトを作成します。指定。

私が欲しいのはこれに似ています(HAMLで):

しかし、プロジェクトはすでに存在している可能性があるため、毎回新しいプロジェクトを作成したくありません。

formtasticとnested_formで調べましたが、私のシナリオに一致する完璧な例は見つかりませんでした。

ありがとう

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

c# - ラップ/マルチ モデル ビューのクライアント側検証

これら 2 つのモデル クラスを 1 つのモデルにラップしています。厳密に型指定されたビューとサーバー側の検証は十分に機能しますが、このラップされたモデル クラスに対してクライアント側の検証が機能しません。

クライアント側のコードは次のとおりです。

問題は、emailProperty がそのモデルに記載されているプロパティ名のみを返すことです。「EmailAddress」ですが、厳密に型指定されたビューは、次のように呼び出されるため、「Model1Name.EmailAddress」として名前を割り当てます。

したがって、プロパティを検索すると null が返され、エラーが発生します。したがって、ここでの私の質問は次のようになると思います。

  1. 割り当てられたモデル名 ("Model1Name") を取得してプロパティ名を追加する方法はありますか?
  2. 割り当てられたモデル名を DataAnnotations/ModelValidationRule クラスから渡すことはできますか? もしそうなら、どのように?

ここに私のモデルクラスがあります:

補足: クライアント側の検証は、単一のモデル ビューに対して適切に機能します。

編集 多くのデバッグの後、私はそれを知りました

私のDataAnnotationsModelValidatorでは、パラメーター名「EmailAddress」のみが返され、そのプレフィックス「Model1Name」が省略されているため、間違ったIDが返されます。

どんな助けでも大歓迎です。ありがとう。

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

django - Django - __init__ の形式で min_length を変更しますか?

フォーム コンストラクター内でフィールドの *min_length* 引数を変更する方法はありますか? それはうまくいきません:

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

ruby-on-rails-3.1 - レール-3.1 | これはネストされたフォームのケースですか、それとも他の何かのケースですか?

航空機の航海日誌として使用するアプリに取り組んでいます。データベースの設計で間違った方向に向かっている可能性があります。それに関する推奨事項は役に立ちます。これはネストされたフォームの状況ですか? それとも、実際に両方のモデルのレコードを同時に作成する必要がある場合のみですか?

今のところ、これは私がモデルをレイアウトした方法です:

私ができるようにしたいのは、新しいトリップ レコードを作成し、Aircraft レコードの :hobbs 列を更新することです。Aircraft テーブルを使用して、基本的に現在の飛行時間を追跡したいと考えています (または、車の現在の走行距離と考えてください)。新しいトリップを作成すると、hobbs_out 属性に現在のホブス時間が使用され、hobbs_in がトリップに記録され、Aircraft.hobbs の更新に使用されます。

trip_controller のコードでこれを行うことはできますか? 何かのようなもの:

ネストされたフォームの状況である場合、フォームで Aircraft レコードを更新して新しい Trip レコードを作成するにはどうすればよいですか?

ありがとう!

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

ruby-on-rails - Rails ガイド - ステップ 11 - マルチ モデル フォーム - MassAssignmentSecurity エラー

私は非常に注意深く RailsGuide に従っており、ステップ 11. MultiModel フォームを介してタグを追加するまで、うまく機能しています。コードを追加すると、次のエラーが表示されます。

ActiveModel::MassAssignmentSecurity::PostsController#update のエラー保護された属性を一括割り当てできません: tags_attributes

アプリケーション トレース: app/controllers/posts_controller.rb:65:in block in update' app/controllers/posts_controller.rb:64:inupdate'

ユーザーエラーではないことを確認するために、バックアップして数回やり直しました。誰かがこのステップを乗り越えるのを手伝ってくれますか? もうすぐ完成です!その後、Hartl のチュートリアルに進むことができます。ありがとうございました。

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

ruby-on-rails - マルチモデルフォームを使用してrails3に新しいオブジェクトを作成します

レールが関係しているので、私はn00bです。私は最初のrails3プロジェクトで単一のマルチモデルフォームを作成しようとしています。詳細は以下のとおりです。

明確に言うと、アイテムには複数のレビューを含めることができますが、アイテムを作成するときは、少なくとも1つのレビューが必要です。だから私はアイテムを取得し、アイテムの作成中に単一のフォームで最初のレビューを取得したいと思います。

私は次のビューを使用しています:

<% f.fields_for :item_reviews, @item.item_reviews do |ff| %>現在に関連付けられているitem_reviewがないため機能しません@item@item = Item.new)@itemを保存するまで、新しいitem_reviewを作成できません。その場合はどうすればいいですか。

モデルに依存しない形式が1つの可能性であることは知っていますが、上記のようなものを使用して生活を楽にすることはできません。

PS:念のため、ブートストラップを使用しています。

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

ruby-on-rails-3 - HashWithIndifferentAccesswhile in post リクエストで多対 1 関係

新品(レビューあり)の投稿依頼にマルチモデルフォームを使用しています。投稿リクエストで次のパラメーターを使用しています。

しかし、保存中に次のエラーが発生しました。

原因として item_reviews の配列が疑われるため、次のことを行いました。

しかし、その後、次のエラーが発生し始めました:

どうすれば解決できますか?

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

ruby-on-rails - Rails:マルチモデルフォームはモデルにデータを書き込みません

わかりました、これは私を曲がり角の周りに駆り立てています。[この質問に関連する]3つのモデルがあります:Outfit、Outfit_relationship、Answer。衣装は親モデルであり、他は子供です。Outfitモデルは次のようになります。

2番目と3番目のattr_accessibleは、他のモデルの属性にアクセスするためのものであることに注意してください。これが絶対に必要かどうかはわかりませんが、ある記事ではそうだと言っているものもあれば、そうではないと言っているものもあるので、入れました。

1つのボタンで公開したいこのデータのマルチモデルフォームを作成しました。コードは次のとおりです。

そして、これが衣装コントローラーの関連するバットです:

したがって、問題はID以外にデータベースに何も書き込まれないことです。私はここで何か愚かなことをしていると確信していますが、その理由はわかりません。