0

関連付けられたフォームからデータを取得し、メイン モデルから関連付けられたテーブルに挿入するにはどうすればよいですか?

class Supplier < ActiveRecord::Base  
  has_one :account, foreign_key: "acc_sup_id", :autosave => true   
  self.primary_key = 'sup_id'  
end  

class Account < ActiveRecord::Base  
  belongs_to :supplier, foreign_key: "acc_sup_id"  
  self.primary_key = 'acc_id'  
  self.table_name = 'accounts'  
end

サプライヤーとアカウントを組み合わせたフォームを持っています。送信するときに、対応する値をサプライヤーとアカウントに挿入する方法を見つける必要があります。問題は、仕入先の値が正しく挿入されているが、アカウントが挿入されていないことです。

私はいくつかのフォーラム、グループ、さらにはスタックで同じ質問をしましたが、誰も説得力のある答えを出していないようです.

4

2 に答える 2

0

基本的な戦略は、フォームが送信されたときに送信されているパラメーターを最初に確認することです。それを確認するなど、コントローラーアクションに行を追加できraise params.inspectます。これらのパラグラフに必要なすべてのデータが含まれていることを確認してください。そうでない場合は、そのフォームを生成するビューに問題があります。

すべてのデータをコントローラー アクションに取得したら、コントローラー アクションを変更して、すべてのデータを適切に解釈し、正しいモデルに配置する必要があります。

params.inspectビューのコード、 を実行した結果、およびデータを取得するコントローラー アクションのコードを表示しない限り、これ以上具体的なアドバイスはできません。

于 2013-04-29T06:38:03.563 に答える