ruby on rails - ForbiddenAttributesError on one-field form -
i'm struggling forbidden attributes error
in form i've been working on. tried removing fields 1 , still getting error i'm baffled.
below one-field version of form that's throwing error , respective controller. i've included relevant model.
any thoughts on matter appreciated, i'm stumped.
the form follows:
<link href="https://gitcdn.github.io/bootstrap-toggle/2.2.0/css/bootstrap-toggle.min.css" rel="stylesheet"> <div id="wrapper" class="active main-content"> <%= simple_form_for @incorporation, html: {id:"incorporationform"}, remote: @remote, update: { success: "response", failure: "error"} |f| %> <p id="reportalert"></p> <div class="panel-body"> <div id="basic_info" class="form_section"> <div class="form-left"><h2>basic info</h2></div> <div class="form-right"> <div class="padded-fields"> <div class="form_subsection"> <%= f.input :trademark_search, as: :radio_buttons, checked: false, label: 'would trademark search , provide advice regarding issues identify in relation name have selected?', input_html: { class: 'form-control radio' } %> </div> </div> </div> </div> </div> <%= f.submit :id => 'submit_button', :style => 'display: none;' %> <!-- sidebar --> <!-- sidebar --> <div id="sidebar-wrapper"> <ul id="sidebar_menu" class="sidebar-nav"> <li class="sidebar-brand"><a id="menu-toggle" href="#">menu<span id="main_icon" class="glyphicon glyphicon-align-justify"></span></a></li> </ul> <% @sections=[["basic_info", "basic info"],["address", "address"],["equity", "equity"],["officers","officers"],["directors", "directors"],["contractor","contractors"],["ip","ip"],["shareholders", "shareholders"]] %> <ul class="sidebar-nav" id="sidebar"> <% @sections.each |section| %> <li><a href="#<%= section[0] %>" class="anchor_link"><span class="sub_icon glyphicon glyphicon-link"></span><%= section[1] %></a></li> <% end %> </ul> <div id="save_alert">progress saved</div> <% if @action== "new" %> <%= f.button :submit, id: "save" %> <% else %> <%= f.button :submit, id: "save" %> <% end %> </div> <div id="final-submission" style="float:right"> <div> <label class="final-submission" style="display:block">signify done editing.</label> <%= f.input :submit, type: :checkbox, input_html:{id:'toggle-two', class: "final-submission"}, label: false %> </div> <div> <%= f.submit :id => 'submit_button', label: "submit" %> </div> </div> <% end %> </div>
the controller follows
class incorporationscontroller < applicationcontroller load_and_authorize_resource def index if admin_signed_in? authorize! :index, incorporation @incorporations = incorporation.all.order("created_at desc") else authorize! :index, ability # @user = current_user.find(params[:id]) @incorporations = current_user.incorporations("created_at desc") end end def show end def new @user=current_user puts "just before user console" puts "user console #{@user}" @incorporation = @user.incorporations.build @company = @incorporation.build_company @action = "new" @remote=false end def create @incorporation = current_user.incorporations.build(incorporation_params) if @incorporation.save redirect_to edit_incorporation_path(@incorporation), notice: "successfuly saved incorporation info." else render 'new', notice: "something went wrong; form unable saved." # render :nothing => true end end def edit @action="edit" @remote=true @incorporation = incorporation.find(params[:id]) end def update if @incorporation.update(incorporation_params) redirect_to welcome_index_path else render 'edit' end end def show end def incorpgenerate render nothing: true respond_to |format| format.docx incorporationservice.new(@incorporation).incorporation_document_generate end end end def destroy @incorporation = incorporation.find(params[:id]) @incorporation.destroy redirect_to incorporations_index_path end def dropboxstuff(drpath) end private def find_incorporation @incorporation = incorporation.find(params[:id]) end def incorporation_params params.require(:incorporation).permit(:title, :trademark_search, :user_id, :employee_stock_options, :submit, :_destroy) end end
incorporation.rb
class incorporation < activerecord::base belongs_to :user has_one :company, dependent: :destroy accepts_nested_attributes_for :company, :allow_destroy => true end
my error log follows:
started post "/incorporations" 127.0.0.1 @ 2015-07-08 00:52:38 -0600 processing incorporationscontroller#create html parameters: {"utf8"=>"✓", "authenticity_token"=>"tb+mkc0hcj5hjs0l0wj1sgaxp8o4fwdy6+0551ps+z8=", "incorporation"=>{"trademark_search"=>"false", "submit"=>"0"}, "commit"=>"create incorporation"} completed 500 internal server error in 3ms activemodel::forbiddenattributeserror (activemodel::forbiddenattributeserror): activemodel (4.1.8) lib/active_model/forbidden_attributes_protection.rb:21:in `sanitize_for_mass_assignment' activerecord (4.1.8) lib/active_record/attribute_assignment.rb:24:in `assign_attributes' activerecord (4.1.8) lib/active_record/core.rb:453:in `init_attributes' activerecord (4.1.8) lib/active_record/core.rb:196:in `initialize' activerecord (4.1.8) lib/active_record/inheritance.rb:30:in `new' activerecord (4.1.8) lib/active_record/inheritance.rb:30:in `new' cancan (1.6.10) lib/cancan/controller_resource.rb:85:in `build_resource' cancan (1.6.10) lib/cancan/controller_resource.rb:66:in `load_resource_instance' cancan (1.6.10) lib/cancan/controller_resource.rb:32:in `load_resource' cancan (1.6.10) lib/cancan/controller_resource.rb:25:in `load_and_authorize_resource' cancan (1.6.10) lib/cancan/controller_resource.rb:10:in `block in add_before_filter' activesupport (4.1.8) lib/active_support/callbacks.rb:440:in `instance_exec' activesupport (4.1.8) lib/active_support/callbacks.rb:440:in `block in make_lambda' activesupport (4.1.8) lib/active_support/callbacks.rb:160:in `call' activesupport (4.1.8) lib/active_support/callbacks.rb:160:in `block in halting' activesupport (4.1.8) lib/active_support/callbacks.rb:229:in `call' activesupport (4.1.8) lib/active_support/callbacks.rb:229:in `block in halting' activesupport (4.1.8) lib/active_support/callbacks.rb:229:in `call' activesupport (4.1.8) lib/active_support/callbacks.rb:229:in `block in halting' activesupport (4.1.8) lib/active_support/callbacks.rb:166:in `call' activesupport (4.1.8) lib/active_support/callbacks.rb:166:in `block in halting' activesupport (4.1.8) lib/active_support/callbacks.rb:166:in `call' activesupport (4.1.8) lib/active_support/callbacks.rb:166:in `block in halting' activesupport (4.1.8) lib/active_support/callbacks.rb:166:in `call' activesupport (4.1.8) lib/active_support/callbacks.rb:166:in `block in halting' activesupport (4.1.8) lib/active_support/callbacks.rb:86:in `call' activesupport (4.1.8) lib/active_support/callbacks.rb:86:in `run_callbacks' actionpack (4.1.8) lib/abstract_controller/callbacks.rb:19:in `process_action' actionpack (4.1.8) lib/action_controller/metal/rescue.rb:29:in `process_action' actionpack (4.1.8) lib/action_controller/metal/instrumentation.rb:31:in `block in process_action' activesupport (4.1.8) lib/active_support/notifications.rb:159:in `block in instrument' activesupport (4.1.8) lib/active_support/notifications/instrumenter.rb:20:in `instrument' activesupport (4.1.8) lib/active_support/notifications.rb:159:in `instrument' actionpack (4.1.8) lib/action_controller/metal/instrumentation.rb:30:in `process_action' actionpack (4.1.8) lib/action_controller/metal/params_wrapper.rb:250:in `process_action' activerecord (4.1.8) lib/active_record/railties/controller_runtime.rb:18:in `process_action' actionpack (4.1.8) lib/abstract_controller/base.rb:136:in `process' actionview (4.1.8) lib/action_view/rendering.rb:30:in `process' actionpack (4.1.8) lib/action_controller/metal.rb:196:in `dispatch' actionpack (4.1.8) lib/action_controller/metal/rack_delegation.rb:13:in `dispatch' actionpack (4.1.8) lib/action_controller/metal.rb:232:in `block in action' actionpack (4.1.8) lib/action_dispatch/routing/route_set.rb:82:in `call' actionpack (4.1.8) lib/action_dispatch/routing/route_set.rb:82:in `dispatch' actionpack (4.1.8) lib/action_dispatch/routing/route_set.rb:50:in `call' actionpack (4.1.8) lib/action_dispatch/journey/router.rb:73:in `block in call' actionpack (4.1.8) lib/action_dispatch/journey/router.rb:59:in `each' actionpack (4.1.8) lib/action_dispatch/journey/router.rb:59:in `call' actionpack (4.1.8) lib/action_dispatch/routing/route_set.rb:678:in `call' warden (1.2.3) lib/warden/manager.rb:35:in `block in call' warden (1.2.3) lib/warden/manager.rb:34:in `catch' warden (1.2.3) lib/warden/manager.rb:34:in `call' rack (1.5.2) lib/rack/etag.rb:23:in `call' rack (1.5.2) lib/rack/conditionalget.rb:35:in `call' rack (1.5.2) lib/rack/head.rb:11:in `call' actionpack (4.1.8) lib/action_dispatch/middleware/params_parser.rb:27:in `call' actionpack (4.1.8) lib/action_dispatch/middleware/flash.rb:254:in `call' rack (1.5.2) lib/rack/session/abstract/id.rb:225:in `context' rack (1.5.2) lib/rack/session/abstract/id.rb:220:in `call' actionpack (4.1.8) lib/action_dispatch/middleware/cookies.rb:560:in `call' activerecord (4.1.8) lib/active_record/query_cache.rb:36:in `call' activerecord (4.1.8) lib/active_record/connection_adapters/abstract/connection_pool.rb:621:in `call' activerecord (4.1.8) lib/active_record/migration.rb:380:in `call' actionpack (4.1.8) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call' activesupport (4.1.8) lib/active_support/callbacks.rb:82:in `run_callbacks' actionpack (4.1.8) lib/action_dispatch/middleware/callbacks.rb:27:in `call' actionpack (4.1.8) lib/action_dispatch/middleware/reloader.rb:73:in `call' actionpack (4.1.8) lib/action_dispatch/middleware/remote_ip.rb:76:in `call' actionpack (4.1.8) lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call' actionpack (4.1.8) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call' railties (4.1.8) lib/rails/rack/logger.rb:38:in `call_app' railties (4.1.8) lib/rails/rack/logger.rb:20:in `block in call' activesupport (4.1.8) lib/active_support/tagged_logging.rb:68:in `block in tagged' activesupport (4.1.8) lib/active_support/tagged_logging.rb:26:in `tagged' activesupport (4.1.8) lib/active_support/tagged_logging.rb:68:in `tagged' railties (4.1.8) lib/rails/rack/logger.rb:20:in `call' actionpack (4.1.8) lib/action_dispatch/middleware/request_id.rb:21:in `call' rack (1.5.2) lib/rack/methodoverride.rb:21:in `call' rack (1.5.2) lib/rack/runtime.rb:17:in `call' activesupport (4.1.8) lib/active_support/cache/strategy/local_cache_middleware.rb:26:in `call' rack (1.5.2) lib/rack/lock.rb:17:in `call' actionpack (4.1.8) lib/action_dispatch/middleware/static.rb:84:in `call' rack (1.5.2) lib/rack/sendfile.rb:112:in `call' railties (4.1.8) lib/rails/engine.rb:514:in `call' railties (4.1.8) lib/rails/application.rb:144:in `call' rack (1.5.2) lib/rack/lock.rb:17:in `call' rack (1.5.2) lib/rack/content_length.rb:14:in `call' rack (1.5.2) lib/rack/handler/webrick.rb:60:in `service' /home/sam/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/webrick/httpserver.rb:138:in `service' /home/sam/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/webrick/httpserver.rb:94:in `run' /home/sam/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/webrick/server.rb:294:in `block in start_thread' rendered /home/sam/.rvm/gems/ruby-2.2.0/gems/actionpack-4.1.8/lib/action_dispatch/middleware/templates/rescues/_source.erb (0.5ms) rendered /home/sam/.rvm/gems/ruby-2.2.0/gems/actionpack-4.1.8/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb (1.2ms) rendered /home/sam/.rvm/gems/ruby-2.2.0/gems/actionpack-4.1.8/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb (1.1ms) rendered /home/sam/.rvm/gems/ruby-2.2.0/gems/actionpack-4.1.8/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (17.1ms)
ugg, figured out; unsatisfying. using gem cancan hasn't been updated since 2013 , doesn't know strong params. had change gem using cancancan (that's 3 "can"s), fork of cancan that's still updated.
Comments
Post a Comment