問題タブ [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.
ruby-on-rails - Can't create form_for associated models
I'm writing a simple web application which I like to call PMS (Projects Management System). It this app I have 2 models Projects and Students. I have set (I guess... cuz I'm a newbie) association between these two models. Projects has many students but student belongs to one project (Maybe it'll change with time).
But my problem is in getting everything work together. I don't know how I can insert new students inside new project form. I've tried everything and still nothing!
Here are my source files:
Projects controller:
Students Controller:
Models:
View:
Add new project
Routes:
ruby-on-rails - Rails 4のネストされたリソースは、form_forを機能させることができません
ネストされたリソースに対して form_for を機能させることができず、おかしくなっています。
ルート:
app/views/teacher/questions/_form.html.haml:
index、show、destroy アクションはすべて正しく機能します。を呼び出すと編集アクションのみが失敗します:
スロー:
ruby-on-rails - Rails form_for NameError in fields_for ネストされた属性
私は 2 つのモデルを持っています: 教室と衣装:
これは schema.rb の一部です
これはクラスルームを編集するためのフォームです:
私はこのエラーがありました:
更新: コンソールに次の出力があります:
「服装」の複数形に問題があると思いますが、解決方法がわかりません。助けてもらえますか?
ruby-on-rails - ネストされたフォームの実装の問題
最近、 Nested Formをテストすることにしました。gem のインストールから各モデルの修正までは順調に進んでいたのですが、実物を試してみると運が尽きてしまいました。
モデル
他のすべての友情モデルと同様に、User
は として自己参照し:friend
ます。
これは私のペーパークリップモデルです:
これはDeviseによって生成されます:
フォーム
これはネストされていないフォームで、正しく機能しました。
これは私が修正しようとしているフォームです:
発生したエラー
A. @upload
(@upload = Upload.new
コントローラーにある) を使用すると、ArgumentError in Uploads#new
.
<%= simple_nested_form_for @upload, url: uploads_path(@upload), html: { method: :post } do |f| %>
Invalid association. Make sure that accepts_nested_attributes_for is used for :uploads association.
B. 修正しようとしているフォーム (「フォーム」セクションを参照@user = current_user
) が、編集要求として表示されているようです。フォームへの入力を許可する代わりに/uploads/new
、対応するすべての user の値を使用してすべてのフォームをロードします。:uploads
C. 同じフォームから送信するとparam not found: upload
エラーが発生する。
ActionController::ParameterMissing in UploadsController#create
質問
通常のフォームとして機能できるようにするには、ネストされたフォームをどのように修正する必要がありますか?
ありがとうございました。
jquery - Rails 3.2.13 Nested_Form Gem は、UJS または Ajax を使用して、ネストされたフォームのラベルを更新します。
Rails 3.2.13 と Nested_Form gem を使用して、出荷ヘッダー レコードと複数の出荷詳細レコードを作成しています。すべてがうまく機能し、詳細項目を追加、削除して正しく保存できます。ここでやりたいことは、フォームのネストされた fields_for セクションの一部である Material 選択ボックスに UJS または Ajax を追加することです。材料が選択されると、その横にある「現在の残高」ラベルが、各品目の正しい在庫数で更新されます。
これは UJS と Ajax への私の最初の進出であり、このタスクを達成する方法について少し迷っています。これまでのところ、私のフォームの関連部分は次のようになります。
new.html.erb:
そして私のコントローラーアクション:
私は getInventoryData.js.erb を持っていますが、現在何を入れるか迷っています。現在、それは機能するアラートを出すだけです。
私が持っている質問は次のとおりです。
選択ボックスから材料を選択したときに、tb_product_type_id だけを送信する方法はありますか? 現在、id を取得するには、params[:downstream] (親レコード) を介して params をナビゲートする必要があります。コントローラーのアクションで @tb_product_type_id = param[:tb_product_type_id] と言えるようにしたい
コントローラーとビューで @currentBal を使用する既存のコードは、複数の項目を追加すると機能するとは思いません... 1 つ以上の項目を処理するようにリファクタリングするにはどうすればよいですか?
複数の項目を処理する必要があることを認識して、「現在の残高」列のラベルを正しく変更するには、getInventory.js.erb ファイルに何が必要ですか? (Nested_Form Gem を使用していることを思い出してください)
私は正しい方向に向かっていますか、それともはるかに簡単でクリーンな別の方法がありますか?
前もって感謝します!
アップデート
getInventory.js.erb ファイル以外はすべて動作していますが、ここでヘルプを探しています。最初の項目で「現在の残高」ラベルを更新することができましたが、当初は複数の項目で機能しないと思っていました。そこで、次のようにすべてのマテリアルの合計を取得するようにコントローラー コードを変更しました。
このコントローラ コードでは、結果セットを反復処理して選択したマテリアルと一致させ、選択タグの直後に続くラベル タグを更新するだけでよいと思います。jquery を使用して DOM をナビゲートし、更新する正しいラベルを見つけるにはどうすればよいですか? このJavaScriptを使用してすべての選択ボックスの値を見つけましたが、次の要素を取得して更新できないようです: