Ich möchte mehrere Objekte eines Modells in Rails erstellen und ich habe einige Probleme beim Speichern von ihnen. Ich füge bereits Felder dynamisch hinzu und entferne sie, aber ich kann nicht herausfinden, wie man die vielfachen Objekte speichert.Erstellen mehrerer Objekte desselben Modells in Rails
ich die Daten meiner Ansicht wie folgt empfangen:
Parameters: {
"utf8"=>"✓",
"authenticity_token"=>"0aoRgalvZPKdBJr15EooxNCimh2C6R2RBYi3wTXTpaIwpzb8cNSAH/968932KFscg8eiNPej1x2iYFsaWalVQw==",
"transaction"=>{
"client_id"=>"206",
"invoice_id"=>"1",
"date"=>"07/07/2016",
"value"=>"50",
"description"=>""},
"dates"=>[
"07/08/2016",
"07/09/2016"],
"values"=>[
"49",
"48"],
"commit"=>"Save"}
transaction
ist die wichtigste Transaktion, dates
und values
sind, was von der Haupttransaktion und den beiden anderen Transaktionen difers.
meine Methode in TransactionController erstellen ist wie folgt:
def create
@transaction = Transaction.new(transaction_params)
dates = params['dates']
values = params['values']
if(!dates.nil?)
@transactions_ = []
dates.length.times do |i|
t = Trasanction.create(
client_id: @transaction.client_id,
invoice_id: @transaction.invoice_id,
description: @transaction.description,
date: dates[i],
value: values[i])
@transactions_ << t
end
end
respond_to do |format|
if @transaction.save
@transactions_.each do |t|
t.save
end
format.html { redirect_to @transaction, notice: 'Transaction succefully created.' }
format.json { render :show, status: :created, location: @transaction }
else
format.html { render :new }
format.json { render json: @transaction.errors, status: :unprocessable_entity }
end
end
end
Aber ich bin immer diese Fehlermeldung:
uninitialized constant TransactionsController::Trasanction
t = Trasanction.create(
Anscheinend kann ich nicht Transaction.create
rufen auf diese Weise, aber ich bin fast Sicher, ich habe so etwas in einem Tutorial gesehen.
Ruby hat Flags, die Ihnen helfen können, diese Art von Problemen zu diagnostizieren: 'ruby -cwW2 script_to_check.rb' –