active admin undefined method `[]'' for nil:NilClass

ruby LED
Thu, 19 Apr 2012 17:34:07 -0000

im working with active admin i have collection_select or dropdown box
that populates the packages and crews im just wondering i why this

undefined method `[]'' for nil:NilClass`
i dont know what happened but it run few days ago and tested it once but
now it raises this error are there possible way to solve this?

def create
   @package = Package.find(params[:package_crew][:package_id])
   crew = Crew.find(params[:package_crew][:crew_id] )
   @package_crew = @package.add_crew(crew.id)
   if @package_crew.save
      redirect_to {admin_package_crew_url}
   end
 end
thanks in advance more power to us all

i tried this

def create
  #pid = params[:package_crew][:crew_id] if params[:package_crew]
  pid,cid = 2 #tried nil,0..10
  if params[:package_crew]
     pid = params[:package_crew][:package_id]
     cid = params[:package_crew][:crew_id]
  end
  @package = Package.find_by_id(pid)
  crew = Crew.find_by_id(cid)
  #@package = Package.find(params[:package_crew][:package_id])
  #crew = Crew.find(params[:package_crew][:crew_id] )
  @package_crew = @package.add_crew(crew.id)
  if @package_crew.save
     redirect_to {admin_package_crew_url}
  end
end

add_crew method

def add_crew(crew_id)
    current_package = package_crews.find_by_crew_id(crew_id)
    if current_package
      current_package.quantity = current_package.quantity.to_i + 1
    else
      current_package = package_crews.build(:crew_id => crew_id)
      current_package.price = current_package.crew.price
    end
      current_package
  end
moving parameters

{"utf8"=>"✓",
 "authenticity_token"=>"n4WZpQpES6mnSO12oGKV/MeoxAVvV9OmJQKfhcpnvQM=",
 "crew_for_package"=>{"package_id"=>"1",
 "crew_id"=>"1",
 "quantity"=>"1"},
 "commit"=>"Create Package crew"}
stack error

app/admin/package_crews.rb:35:in `create''
actionpack (3.2.1) lib/action_controller/metal/implicit_render.rb:4:in
`send_action''
actionpack (3.2.1) lib/abstract_controller/base.rb:167:in
`process_action''
actionpack (3.2.1) lib/action_controller/metal/rendering.rb:10:in
`process_action''
actionpack (3.2.1) lib/abstract_controller/callbacks.rb:18:in `block in
process_action''
activesupport (3.2.1) lib/active_support/callbacks.rb:447:in
`_run__304549499__process_action__775442107__callbacks''
activesupport (3.2.1) lib/active_support/callbacks.rb:405:in
`__run_callback''
activesupport (3.2.1) lib/active_support/callbacks.rb:385:in
`_run_process_action_callbacks''
activesupport (3.2.1) lib/active_support/callbacks.rb:81:in
`run_callbacks''
actionpack (3.2.1) lib/abstract_controller/callbacks.rb:17:in
`process_action''
actionpack (3.2.1) lib/action_controller/metal/rescue.rb:29:in
`process_action''
actionpack (3.2.1) lib/action_controller/metal/instrumentation.rb:30:in
`block in process_action''
activesupport (3.2.1) lib/active_support/notifications.rb:123:in `block
in instrument''
activesupport (3.2.1)
lib/active_support/notifications/instrumenter.rb:20:in `instrument''
activesupport (3.2.1) lib/active_support/notifications.rb:123:in
`instrument''
actionpack (3.2.1) lib/action_controller/metal/instrumentation.rb:29:in
`process_action''
actionpack (3.2.1) lib/action_controller/metal/params_wrapper.rb:205:in
`process_action''
activerecord (3.2.1)
lib/active_record/railties/controller_runtime.rb:18:in `process_action''
actionpack (3.2.1) lib/abstract_controller/base.rb:121:in `process''
actionpack (3.2.1) lib/abstract_controller/rendering.rb:45:in `process''
actionpack (3.2.1) lib/action_controller/metal.rb:203:in `dispatch''
actionpack (3.2.1) lib/action_controller/metal/rack_delegation.rb:14:in
`dispatch''
actionpack (3.2.1) lib/action_controller/metal.rb:246:in `block in
action''
actionpack (3.2.1) lib/action_dispatch/routing/route_set.rb:66:in
`call''
actionpack (3.2.1) lib/action_dispatch/routing/route_set.rb:66:in
`dispatch''
actionpack (3.2.1) lib/action_dispatch/routing/route_set.rb:30:in
`call''
journey (1.0.3) lib/journey/router.rb:68:in `block in call''
journey (1.0.3) lib/journey/router.rb:56:in `each''
journey (1.0.3) lib/journey/router.rb:56:in `call''
actionpack (3.2.1) lib/action_dispatch/routing/route_set.rb:589:in
`call''
sass (3.1.15) lib/sass/plugin/rack.rb:54:in `call''
warden (1.1.1) lib/warden/manager.rb:35:in `block in call''
warden (1.1.1) lib/warden/manager.rb:34:in `catch''
warden (1.1.1) lib/warden/manager.rb:34:in `call''
actionpack (3.2.1)
lib/action_dispatch/middleware/best_standards_support.rb:17:in `call''
rack (1.4.1) lib/rack/etag.rb:23:in `call''
rack (1.4.1) lib/rack/conditionalget.rb:35:in `call''
actionpack (3.2.1) lib/action_dispatch/middleware/head.rb:14:in `call''
actionpack (3.2.1) lib/action_dispatch/middleware/params_parser.rb:21:in
`call''
actionpack (3.2.1) lib/action_dispatch/middleware/flash.rb:242:in
`call''
rack (1.4.1) lib/rack/session/abstract/id.rb:205:in `context''
rack (1.4.1) lib/rack/session/abstract/id.rb:200:in `call''
actionpack (3.2.1) lib/action_dispatch/middleware/cookies.rb:338:in
`call''
activerecord (3.2.1) lib/active_record/query_cache.rb:64:in `call''
activerecord (3.2.1)
lib/active_record/connection_adapters/abstract/connection_pool.rb:443:in
`call''
actionpack (3.2.1) lib/action_dispatch/middleware/callbacks.rb:28:in
`block in call''
activesupport (3.2.1) lib/active_support/callbacks.rb:405:in
`_run__1039351831__call__833288071__callbacks''
activesupport (3.2.1) lib/active_support/callbacks.rb:405:in
`__run_callback''
activesupport (3.2.1) lib/active_support/callbacks.rb:385:in
`_run_call_callbacks''
activesupport (3.2.1) lib/active_support/callbacks.rb:81:in
`run_callbacks''
actionpack (3.2.1) lib/action_dispatch/middleware/callbacks.rb:27:in
`call''
actionpack (3.2.1) lib/action_dispatch/middleware/reloader.rb:65:in
`call''
actionpack (3.2.1) lib/action_dispatch/middleware/remote_ip.rb:31:in
`call''
actionpack (3.2.1)
lib/action_dispatch/middleware/debug_exceptions.rb:16:in `call''
actionpack (3.2.1)
lib/action_dispatch/middleware/show_exceptions.rb:56:in `call''
railties (3.2.1) lib/rails/rack/logger.rb:26:in `call_app''
railties (3.2.1) lib/rails/rack/logger.rb:16:in `call''
actionpack (3.2.1) lib/action_dispatch/middleware/request_id.rb:22:in
`call''
rack (1.4.1) lib/rack/methodoverride.rb:21:in `call''
rack (1.4.1) lib/rack/runtime.rb:17:in `call''
activesupport (3.2.1)
lib/active_support/cache/strategy/local_cache.rb:72:in `call''
rack (1.4.1) lib/rack/lock.rb:15:in `call''
actionpack (3.2.1) lib/action_dispatch/middleware/static.rb:53:in
`call''
railties (3.2.1) lib/rails/engine.rb:479:in `call''
railties (3.2.1) lib/rails/application.rb:220:in `call''
railties (3.2.1) lib/rails/railtie/configurable.rb:30:in
`method_missing''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/rack/request_handler.rb:96:in
`process_request''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/abstract_request_handler.rb:513:in
`accept_and_process_next_request''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/abstract_request_handler.rb:274:in
`main_loop''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/rack/application_spawner.rb:206:in
`start_request_handler''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/rack/application_spawner.rb:171:in
`block in handle_spawn_application''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/utils.rb:479:in
`safe_fork''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/rack/application_spawner.rb:166:in
`handle_spawn_application''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/abstract_server.rb:357:in
`server_main_loop''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/abstract_server.rb:206:in
`start_synchronously''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/abstract_server.rb:180:in
`start''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/rack/application_spawner.rb:129:in
`start''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/spawn_manager.rb:253:in
`block (2 levels) in spawn_rack_application''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/abstract_server_collection.rb:132:in
`lookup_or_add''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/spawn_manager.rb:246:in
`block in spawn_rack_application''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/abstract_server_collection.rb:82:in
`block in synchronize''
<internal:prelude>:10:in `synchronize''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/abstract_server_collection.rb:79:in
`synchronize''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/spawn_manager.rb:244:in
`spawn_rack_application''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/spawn_manager.rb:137:in
`spawn_application''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/spawn_manager.rb:275:in
`handle_spawn_application''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/abstract_server.rb:357:in
`server_main_loop''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/lib/phusion_passenger/abstract_server.rb:206:in
`start_synchronously''
/home/led/.passenger/standalone/3.0.11-x86-ruby1.9.3-linux-gcc4.6.3-1002/support/helper-scripts/passenger-spawn-server:99:in
` ''

i dont know if its ok to post a activeadmin problem here sorry if i
posted a wrong question just wondering if there is a activeadmin expert
here thanks

--
Posted via http://www.ruby-forum.com/.

--
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at