Stefano C. wrote:
- inizializza un Address usando la relazione @contact.addresses (per
impostare la foreign key automaticamente)
Penso di avere dei problemi qui, il browser mi comunica che:
undefined method `vaccinations’ for #Patient:0xb74230bc
tieni conto che io ho (trasformazione di patient<–>vaccine, relazione
molti a molti)
patient --> vaccination <-- vaccine
vaccination praticamente contiene la chiave del paziente e la chiave del
vaccino, quindi un paziente puo’ avere piu’ vaccinazioni.
Sto cercando di creare un paziente e che mi venga chiesto appunto di
selezionare quali vaccini ha fatto (ovviamente poi il problema si
ampliera’ ma una volta capito come fare questo, non avro’ piu’
problemi).
Ho quindi:
class Patient < ActiveRecord::Base
has_many :vaccination
end
class Vaccination < ActiveRecord::Base
belongs_to :patient
belongs_to :vaccine
end
class Vaccine < ActiveRecord::Base
has_many :vaccination
end
class PatientsController < ApplicationController
def new
@patient = Patient.new
@vaccination = Vaccination.new
end
def create
@patient = Patient.new(params[:patient])
if @patient.save
@vaccination = @patient.vaccinations.build(params[:vaccination])
if @vaccination.save
redirect_to contact_url(@contact) and return
end
end
render :action => “new”
end
end
New patient
<% form_for @patient do |f| %>
<%= error_messages_for(“patient”) %>
First name: <%= f.text_field(:nome) %>
Last name: <%= f.text_field(:cognome) %>
<% fields_for @vaccination do |v| %> <%= error_messages_for("vaccination") %>a: <%= v.text_field(:data) %>
c: <%= v.text_field(:vaccine_id) %>
<% end %> <%= submit_tag "Create" %> <% end %><%= link_to ‘Back’, patients_path %>
Dove e’ l’errore? Grazie mille per l’aiuto sono 2 giorni che ci sbatto
la testa, orami penso di esserci grazie al vostro aiuto!!!
Buona serata