ich eine Klasse haben MatriculaForm
mit einigen Verbänden (belongs_to und has_many):NoMethodError (nicht definierte Methode 'aluno' für Action: Parameter) - aluno_attributes
class MatriculaForm < Reform::Form
property :aluno, form: PessoaForm
properties :atributos_extras, :mensalidade
#validation
validates :aluno, :dia_vencimento, :empresa, presence: true
end
Und die _form.html.erb
<%= form_for @matricula_form do |f| %>
<%= f.fields_for :aluno do |aluno| %>
<%= aluno.text_field :nome %>
<% end %>
<% end %>
On-Controller , Mache ich
MatriculaForm.new(params[:matricula])
Aber die initialize
Reform Verfahren erhöht einen Fehler:
NoMethodError (undefined method `aluno' for #<ActionController::Parameters:0x007fe835772a70>
Ich sah, dass die Parameter mit aluno_attributes
Schlüsselnamen werden. Beim Lesen der Dokumente werden diese Parameternamen jedoch akzeptiert.
Ich mache etwas falsch?
Die Attribute sind bereits in der Whitelist und ja, das Modell wird korrekt gespeichert, ohne die Reformvalidierung zu verwenden. Und ich fand keine Dokumentation über "' validates_association'''' –
auf dem Controller '' 'params.require (: matricula) .permit (: id,: aluno_attributes => [: id,: nome, etc])' '' –