Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Delete] causes NoMethodError #53

Open
TJuergensen opened this issue Jun 6, 2018 · 0 comments
Open

[Delete] causes NoMethodError #53

TJuergensen opened this issue Jun 6, 2018 · 0 comments

Comments

@TJuergensen
Copy link

Hello,
I am pretty new to Ruby and have to fix a ThingSpeak server.
The problem is, the admin account cannot delete any accounts or Channels.
Neither of these errors show an application trace, only full traces

Error of Account-deletion:
NoMethodError in Admin::ChannelsController#destroy
undefined method `name' for nil:NilClass
Full-Trace:


vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/associations/has_many_association.rb:81:in `cached_counter_attribute_name'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/associations/has_many_association.rb:104:in `inverse_updates_counter_cache?'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/associations/has_many_association.rb:114:in `delete_records'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/associations/collection_association.rb:493:in `remove_records'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/associations/collection_association.rb:486:in `block in delete_or_destroy'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/associations/collection_association.rb:152:in `block in transaction'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/connection_adapters/abstract/database_statements.rb:211:in `transaction'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/transactions.rb:209:in `transaction'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/associations/collection_association.rb:151:in `transaction'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/associations/collection_association.rb:486:in `delete_or_destroy'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/associations/collection_association.rb:247:in `destroy'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/associations/collection_association.rb:170:in `destroy_all'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/associations/has_many_association.rb:26:in `handle_dependency'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/associations/builder/association.rb:97:in `has_many_dependent_for_api_keys'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/callbacks.rb:377:in `_run__4271050200535634837__destroy__callbacks'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/callbacks.rb:80:in `run_callbacks'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/callbacks.rb:292:in `destroy'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/transactions.rb:265:in `block in destroy'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/transactions.rb:330:in `block in with_transaction_returning_status'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in `block in transaction'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/connection_adapters/abstract/database_statements.rb:221:in `within_new_transaction'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in `transaction'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/transactions.rb:209:in `transaction'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/transactions.rb:327:in `with_transaction_returning_status'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/transactions.rb:265:in `destroy'
vendor/bundle/ruby/2.3.0/bundler/gems/active_admin-0c83cfe0b9b4/lib/active_admin/resource_controller/data_access.rb:189:in `block in destroy_resource'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/core_ext/object/try.rb:45:in `public_send'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/core_ext/object/try.rb:45:in `try'
vendor/bundle/ruby/2.3.0/bundler/gems/active_admin-0c83cfe0b9b4/lib/active_admin/callbacks.rb:79:in `block (2 levels) in define_active_admin_callbacks'
vendor/bundle/ruby/2.3.0/bundler/gems/active_admin-0c83cfe0b9b4/lib/active_admin/resource_controller/data_access.rb:188:in `destroy_resource'
vendor/bundle/ruby/2.3.0/gems/inherited_resources-1.4.1/lib/inherited_resources/actions.rb:58:in `destroy'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/abstract_controller/base.rb:189:in `process_action'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_controller/metal/rendering.rb:10:in `process_action'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/callbacks.rb:493:in `_run__3531449486506308946__process_action__callbacks'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/callbacks.rb:80:in `run_callbacks'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/abstract_controller/callbacks.rb:17:in `process_action'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_controller/metal/rescue.rb:29:in `process_action'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_controller/metal/instrumentation.rb:31:in `block in process_action'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/notifications.rb:159:in `block in instrument'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/notifications.rb:159:in `instrument'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_controller/metal/instrumentation.rb:30:in `process_action'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_controller/metal/params_wrapper.rb:250:in `process_action'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/abstract_controller/base.rb:136:in `process'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/abstract_controller/rendering.rb:44:in `process'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_controller/metal.rb:195:in `dispatch'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_controller/metal.rb:231:in `block in action'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/routing/route_set.rb:80:in `dispatch'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/routing/route_set.rb:48:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/journey/router.rb:71:in `block in call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/journey/router.rb:59:in `each'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/journey/router.rb:59:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/routing/route_set.rb:674:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/rack/error_collector.rb:50:in `traced_call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:55:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/rack/agent_hooks.rb:26:in `traced_call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:55:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/rack/browser_monitoring.rb:23:in `traced_call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:55:in `call'
vendor/bundle/ruby/2.3.0/gems/warden-1.2.3/lib/warden/manager.rb:35:in `block in call'
vendor/bundle/ruby/2.3.0/gems/warden-1.2.3/lib/warden/manager.rb:34:in `catch'
vendor/bundle/ruby/2.3.0/gems/warden-1.2.3/lib/warden/manager.rb:34:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/rack-1.5.2/lib/rack/etag.rb:23:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/rack-1.5.2/lib/rack/conditionalget.rb:35:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/rack-1.5.2/lib/rack/head.rb:11:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-xml_parser-1.0.1/lib/action_dispatch/xml_params_parser.rb:16:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/middleware/params_parser.rb:27:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/middleware/flash.rb:241:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/rack-1.5.2/lib/rack/session/abstract/id.rb:225:in `context'
vendor/bundle/ruby/2.3.0/gems/rack-1.5.2/lib/rack/session/abstract/id.rb:220:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/middleware/cookies.rb:486:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/query_cache.rb:36:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/activerecord-4.0.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:626:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/callbacks.rb:373:in `_run__4364726816475611795__call__callbacks'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/callbacks.rb:80:in `run_callbacks'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/middleware/callbacks.rb:27:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/middleware/reloader.rb:64:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/middleware/remote_ip.rb:76:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/railties-4.0.5/lib/rails/rack/logger.rb:38:in `call_app'
vendor/bundle/ruby/2.3.0/gems/railties-4.0.5/lib/rails/rack/logger.rb:20:in `block in call'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/tagged_logging.rb:68:in `block in tagged'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/tagged_logging.rb:26:in `tagged'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/tagged_logging.rb:68:in `tagged'
vendor/bundle/ruby/2.3.0/gems/railties-4.0.5/lib/rails/rack/logger.rb:20:in `call'
vendor/bundle/ruby/2.3.0/gems/quiet_assets-1.0.3/lib/quiet_assets.rb:23:in `call_with_quiet_assets'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/middleware/request_id.rb:21:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/rack-1.5.2/lib/rack/methodoverride.rb:21:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/rack-1.5.2/lib/rack/runtime.rb:17:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/activesupport-4.0.5/lib/active_support/cache/strategy/local_cache.rb:83:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/rack-utf8_sanitizer-1.2.2/lib/rack/utf8_sanitizer.rb:15:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/rack-1.5.2/lib/rack/lock.rb:17:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/actionpack-4.0.5/lib/action_dispatch/middleware/static.rb:64:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/rack-1.5.2/lib/rack/sendfile.rb:112:in `call'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/railties-4.0.5/lib/rails/engine.rb:511:in `call'
vendor/bundle/ruby/2.3.0/gems/railties-4.0.5/lib/rails/application.rb:97:in `call'
vendor/bundle/ruby/2.3.0/gems/railties-4.0.5/lib/rails/railtie/configurable.rb:30:in `method_missing'
vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.3.0/gems/rack-1.5.2/lib/rack/content_length.rb:14:in `call'
vendor/bundle/ruby/2.3.0/gems/puma-2.9.1/lib/puma/server.rb:490:in `handle_request'
vendor/bundle/ruby/2.3.0/gems/puma-2.9.1/lib/puma/server.rb:361:in `process_client'
vendor/bundle/ruby/2.3.0/gems/puma-2.9.1/lib/puma/server.rb:254:in `block in run'
vendor/bundle/ruby/2.3.0/gems/puma-2.9.1/lib/puma/thread_pool.rb:92:in `block in spawn_thread'

Request

Parameters:

{"_method"=>"delete",
 "authenticity_token"=>"mVLFQMTJRvdazg6BpsFs1FTirLJhodqHxwZsaeYrEFI=",
 "id"=>"5" 

Response

Headers:
None

As for the channel-deletion, its the same as Issue #52 , except for the fact, that there is no application Trace shown.

admin-user routing:

admin_user                         
GET        /admin/users/:id(.:format)                                  admin/users#show 
PATCH      /admin/users/:id(.:format)                                  admin/users#update
PUT        /admin/users/:id(.:format)                                  admin/users#update
DELETE     /admin/users/:id(.:format)                                  admin/users#destroy

Each user can delete their own account without problem, just the admin account cannot do that.

app/controlers/users_controller.rb (pastebin) (used pastebin due to long file)

app/admin/user.rb

ctiveAdmin.register User do
  require 'csv'

  filter :email
  filter :login
  filter :created_at

  permit_params :email, :login, :bio, :website

  index do
    column :id
    column :email
    column :login
    column :created_at
    actions
  end

  show do
    attributes_table do
      rows :id, :email, :login, :time_zone, :bio, :website, :created_at, :sign_in_count, :current_sign_in_at, :last_sign_in_at, :current_sign_in_ip, :last_sign_in_ip
    end
    panel 'Channels' do
      table_for user.channels do
        column :id
        column(:name) { |channel| link_to channel.name, channel }
      end
    end
  end

  form do |f|
    f.semantic_errors *f.object.errors.keys
    f.inputs :email, :login
    f.actions
  end

  # custom action for signups per day
  collection_action :signups, :method => :get, :format => :csv do
    @csv_headers = [:day, :signups]
    @days = User.signups_per_day
  end

  # custom action for emails list
  collection_action :emails, :method => :get do
    @users = User.all
  end

end

I don't know which other info is important, feel free to ask if anything else is needed.

Does anyone have a clue how to fix this?
Thanks in advice

TJ

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant