Hi There,
I’m trying to user fields_for inside a form_tag, but i can’t catch
it
on my controller.
I just take some html code off to makes it easy to read
my view…
i’m using campuses_path(current_church, @campus) instead form_for
@campus, because my route is like
resources :campuses, :path => “:church/campuses”
<%= form_tag campuses_path(current_church, @campus), :class =>
<% end %>
<% end %>
my controller
- @campus.addresses.new(params[:addresses]) # the error line*
list through.
def campus_params
params.require(:campus).permit(:name, :description, :cover,
:addesses)i’ve tried instead :addresses
{:addresses => []}
:addresses []
end
end
my model
class Campus < ActiveRecord::Base
belongs_to :church
has_many :addresses, :as => :addressableaccepts_nested_attributes_for :addresses
end
Request parameters
{“utf8”=>“✓”,
“authenticity_token”=>“B0OBKKM3PQ/Jkh1ebcKyrKZGJuauJeN3O/BWv8Vc7qE=”,
“campus”=>{“name”=>“Campus name”, “description”=>“campus description”},
“addresses”=>{“street”=>“Street name”, “street2”=>"", “city”=>“city
name”, “state”=>“state name”, “zip_code”=>“00000”}, “action”=>“create”,
“controller”=>“campuses”, “church”=>“greenhouse-church”}
Params at Controller:
params[:addresses]
=> {“street”=>“Street name”, “street2”=>"", “city”=>“city name”,
“state”=>“state name”, “zip_code”=>“00000”}
params[:campus]
=> {“name”=>“Campus name”, “description”=>“campus description”}
With this code the error is:
ActiveModel::ForbiddenAttributesError
@campus.addresses.new(params[:addresses])
Let me know if you need more information.
Thank You,
André