7
Mam formularz utworzony za pomocą klejnotu simple_form, który wypełnia 2 modele za pomocą zagnieżdżonych atrybutów. Chcę sprawdzić, czy są jakieś błędy i wyświetlić nowy blok. Jednak nie jestem pewien, jak poprawnie uzyskać dostęp do komunikatu o błędzie dla atrybutu location
modelu Booking
.Uzyskiwanie dostępu do komunikatów o błędach dla zagnieżdżonego pola atrybutu
class Booking < ActiveRecord::Base
belongs_to :customer
attr_accessible :date_wanted, :location
end
i
class Customer < ActiveRecord::Base
has_many :bookings
accepts_nested_attributes_for :bookings
attr_accessible :name, :phone, :bookings_attributes
validates_presence_of :name, :phone
end
Formularz widok:
simple_form_for @customer, {:html => { :class => "form-horizontal" }} do |f|
= f.input :name
= f.input :phone
= f.simple_fields_for :bookings do |b|
= b.input :date
= b.input :location
- if @customer.errors[:appointments_attributes][:location]
# insert code if any validation errors for the date field were found
= f.button :submit
Dziękujemy! Jestem w stanie sprawdzić, czy są jakieś komunikaty o błędach, używając 'b.object.errors [: location] .empty?'. – dspencer