私のアプリケーションのモデルは、 has_many indents のSupplier 、has_many indent_items のIndent 、 has_many の出荷のIndentItem 、belongs_to Commercial_invoice 、CommercialInvoiceです。
次のコードは、CommercialInvoiceController のeditメソッドにあります。
def edit
@commercial_invoice = CommercialInvoice.find(params[:id])
@shipments = Shipment.includes(:indent_item => [:indent => :supplier]).where
(:invoice_date => @commercial_invoice.start_date..@commercial_invoice.end_date).where
(:indents => {:supplier_id => @commercial_invoice.supplier_id})
end
編集ページでは、@shipments 変数を使用して、チェック ボックス付きのリストを表示しています。編集ページを開くと、リストが正常にレンダリングされます。ただし、一部の検証が失敗した場合の更新中に、編集ページがエラーで再度レンダリングされますが、今回は @shipments 変数が空白です。
そのため、コンソールを確認したところ、編集ページがエラーで再度レンダリングされたときに、コードがまったく実行されていないようです。
何が起こっているのか理解できません。ここで私を助けてください。
ありがとう。