前提・実現したいこと
Ruby on railsで特定のuserのみがログインできるようなアプリを作ろうとしています。
現在、devise,rails_admin,cancancanのgemを導入して、
userテーブルにはadmin_flg :blooeanカラムを作成し、
admin_flgがtrueのユーザーだけが/adminへアクセスできるようにするところまでできました。
しかし、管理画面から新しいuserを登録しようとするとNoMethodErrorになります。
発生している問題・エラーメッセージ
error
1NoMethodError in RailsAdmin::Main#new 2Showing/Users/*****/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails_admin-692ae9910be9/app/views/rails_admin/main/index.html.haml where line #25 raised: 3 4undefined method `properties' for nil:NilClass 5 6undefined method `type_for_attribute' for Store:Class
terminal
1Processing by RailsAdmin::MainController#index as HTML 2 Parameters: {"model_name"=>"user"} 3 User Load (0.4ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 ORDER BY `users`.`id` ASC LIMIT 1 4 ↳ config/initializers/rails_admin.rb:7:in `block (2 levels) in <top (required)>' 5 Rendering /Users/********/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails_admin-692ae9910be9/app/views/rails_admin/main/index.html.haml within layouts/rails_admin/application 6 Rendered /Users/********/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/bundler/gems/rails_admin-692ae9910be9/app/views/rails_admin/main/index.html.haml within layouts/rails_admin/application (Duration: 4.5ms | Allocations: 3663) 7Completed 500 Internal Server Error in 10ms (ActiveRecord: 0.4ms | Allocations: 6428) 8 9 10 11ActionView::Template::Error (undefined method `properties' for nil:NilClass): 12 22: - content_for :contextual_tabs do 13 23: - if checkboxes 14 24: = bulk_menu 15 25: - if filterable_fields.present? 16 26: %li.dropdown{style: 'float:right'} 17 27: %a.dropdown-toggle{href: '#', :'data-toggle' => "dropdown"} 18 28: = t('admin.misc.add_filter') 19 20rails_admin (692ae9910be9) lib/rails_admin/config/fields/types/belongs_to_association.rb:19:in `block in <class:BelongsToAssociation>'
該当のソースコード
rails_admin.rb
1RailsAdmin.config do |config| 2 3 ### Popular gems integration 4 5 # == Devise == 6 config.authenticate_with do 7 warden.authenticate! scope: :user 8 end 9 config.current_user_method(&:current_user) 10 11 # == CancanCan == 12 config.authorize_with :cancancan 13 14 ## == Pundit == 15 # config.authorize_with :pundit 16 17 ## == PaperTrail == 18 # config.audit_with :paper_trail, 'User', 'PaperTrail::Version' # PaperTrail >= 3.0.0 19 20 ### More at https://github.com/sferik/rails_admin/wiki/Base-configuration 21 22 ## == Gravatar integration == 23 ## To disable Gravatar integration in Navigation Bar set to false 24 # config.show_gravatar = true 25 26 config.actions do 27 dashboard # mandatory 28 index # mandatory 29 new 30 export 31 bulk_delete 32 show 33 edit 34 delete 35 show_in_app 36 37 ## With an audit adapter, you can add: 38 # history_index 39 # history_show 40 end 41end 42
試したこと
https://www.gitmemory.com/issue/sferik/rails_admin/3187/528053850
上記の記事を参考にrails_adminのバージョンが古いのかと考え、bundle update rails_adminをしましたが変化はありませんでした。
補足情報(FW/ツールのバージョンなど)
rails 6.0.2
ruby 2.5.1
rails_admin 2.0.0
あなたの回答
tips
プレビュー