I used Devise (branch master) with Rails 5, and followed this guide to config login by email or username.
My routes.rb
devise_for :users,
controllers: {
sessions: 'my_sessions',
registrations: 'my_registrations'
}
My app/controllers/my_sessions_controller.rb
class MySessionsController < Devise::SessionsController
protected
def sign_in_params
params.fetch(:user, {}).permit(:identity, :username, :email, :password, :remember_me)
end
end
When I tried to sign in or sign up, I received this error:
Started GET "/users/sign_in" for ::1 at 2016-01-04 10:23:35 +0700
ActiveRecord::SchemaMigration Load (0.5ms) SELECT "schema_migrations".* FROM "schema_migrations"
Processing by MySessionsController#new as HTML
Rendered devise/shared/_links.html.erb (1.4ms)
Rendered devise/sessions/new.html.erb within layouts/application (28.0ms)
Completed 200 OK in 848ms (Views: 817.7ms | ActiveRecord: 2.7ms)
NoMethodError - undefined method `clean' for #<Hash:0x007fb221756ba8>
Did you mean? clear:
actionpack (5.0.0.beta1) lib/action_dispatch/middleware/exception_wrapper.rb:118:in `clean_backtrace'
actionpack (5.0.0.beta1) lib/action_dispatch/middleware/exception_wrapper.rb:52:in `application_trace'
meta_request (0.3.4) lib/meta_request/event.rb:19:in `events_for_exception'
meta_request (0.3.4) lib/meta_request/middlewares/app_request_handler.rb:17:in `rescue in call'
meta_request (0.3.4) lib/meta_request/middlewares/app_request_handler.rb:24:in `call'
meta_request (0.3.4) lib/meta_request/middlewares/meta_request_handler.rb:13:in `call'
actionview (5.0.0.beta1) lib/action_view/digestor.rb:14:in `call'
warden (1.2.4) lib/warden/manager.rb:35:in `block in call'
warden (1.2.4) lib/warden/manager.rb:34:in `catch'
warden (1.2.4) lib/warden/manager.rb:34:in `call'
rack (2.0.0.alpha) lib/rack/etag.rb:25:in `call'
rack (2.0.0.alpha) lib/rack/conditional_get.rb:38:in `call'
rack (2.0.0.alpha) lib/rack/head.rb:12:in `call'
rack (2.0.0.alpha) lib/rack/session/abstract/id.rb:220:in `context'
rack (2.0.0.alpha) lib/rack/session/abstract/id.rb:214:in `call'
actionpack (5.0.0.beta1) lib/action_dispatch/middleware/cookies.rb:608:in `call'
activerecord (5.0.0.beta1) lib/active_record/query_cache.rb:36:in `call'
activerecord (5.0.0.beta1) lib/active_record/connection_adapters/abstract/connection_pool.rb:963:in `call'
activerecord (5.0.0.beta1) lib/active_record/migration.rb:524:in `call'
actionpack (5.0.0.beta1) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
activesupport (5.0.0.beta1) lib/active_support/callbacks.rb:97:in `__run_callbacks__'
activesupport (5.0.0.beta1) lib/active_support/callbacks.rb:750:in `_run_call_callbacks'
activesupport (5.0.0.beta1) lib/active_support/callbacks.rb:90:in `run_callbacks'
actionpack (5.0.0.beta1) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
actionpack (5.0.0.beta1) lib/action_dispatch/middleware/reloader.rb:71:in `call'
actionpack (5.0.0.beta1) lib/action_dispatch/middleware/remote_ip.rb:79:in `call'
better_errors (2.1.1) lib/better_errors/middleware.rb:84:in `protected_app_call'
better_errors (2.1.1) lib/better_errors/middleware.rb:79:in `better_errors_call'
better_errors (2.1.1) lib/better_errors/middleware.rb:57:in `call'
rack-contrib (1.2.0) lib/rack/contrib/response_headers.rb:17:in `call'
meta_request (0.3.4) lib/meta_request/middlewares/headers.rb:16:in `call'
actionpack (5.0.0.beta1) lib/action_dispatch/middleware/debug_exceptions.rb:49:in `call'
web-console (3.0.0) lib/web_console/middleware.rb:27:in `call'
actionpack (5.0.0.beta1) lib/action_dispatch/middleware/show_exceptions.rb:31:in `call'
railties (5.0.0.beta1) lib/rails/rack/logger.rb:42:in `call_app'
railties (5.0.0.beta1) lib/rails/rack/logger.rb:24:in `block in call'
activesupport (5.0.0.beta1) lib/active_support/tagged_logging.rb:70:in `block in tagged'
activesupport (5.0.0.beta1) lib/active_support/tagged_logging.rb:26:in `tagged'
activesupport (5.0.0.beta1) lib/active_support/tagged_logging.rb:70:in `tagged'
railties (5.0.0.beta1) lib/rails/rack/logger.rb:24:in `call'
quiet_assets (1.1.0) lib/quiet_assets.rb:27:in `call_with_quiet_assets'
actionpack (5.0.0.beta1) lib/action_dispatch/middleware/request_id.rb:24:in `call'
rack (2.0.0.alpha) lib/rack/method_override.rb:22:in `call'
rack (2.0.0.alpha) lib/rack/runtime.rb:22:in `call'
activesupport (5.0.0.beta1) lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call'
actionpack (5.0.0.beta1) lib/action_dispatch/middleware/load_interlock.rb:13:in `call'
actionpack (5.0.0.beta1) lib/action_dispatch/middleware/static.rb:132:in `call'
rack (2.0.0.alpha) lib/rack/sendfile.rb:111:in `call'
railties (5.0.0.beta1) lib/rails/engine.rb:522:in `call'
puma (2.15.3) lib/puma/server.rb:541:in `handle_request'
puma (2.15.3) lib/puma/server.rb:388:in `process_client'
puma (2.15.3) lib/puma/server.rb:270:in `block in run'
puma (2.15.3) lib/puma/thread_pool.rb:106:in `block in spawn_thread'
I think it related to strong parameters. Could you plz tell me how to fix this issue? Or tell me where I can read Rails 5 documentation?
https://github.com/rails/rails/issues/22846
I removed meta_request gem and it resolved!
Most helpful comment
https://github.com/rails/rails/issues/22846
I removed meta_request gem and it resolved!