Reputation: 5
I want install redmine plugin ldap_sync
, but when i test it, i have error:
Completed 500 Internal Server Error in 28ms (ActiveRecord: 19.6ms) NoMethodError (undefined method `fetch' for nil:NilClass):
so thats part of code, which have some fetch
... def test return render 'ldap_setting_invalid' unless @ldap_setting.valid? ldap_test = params[:ldap_test] users = ldap_test.fetch(:test_users, '').split(',') groups = ldap_test.fetch(:test_groups, '').split(',') [users, groups].each {|l| l.map(&:strip).reject(&:blank?) } @test = LdapTest.new(@ldap_setting) @test.bind_user = ldap_test[:bind_user] @test.bind_password = ldap_test[:bind_password] if @test.valid? @test.run_with_users_and_groups(users, groups) else render 'ldap_test_invalid' end end ...
so thats part of code, which have some fetch
in redmine plugin:
... def test return render 'ldap_setting_invalid' unless @ldap_setting.valid? ldap_test = params[:ldap_test] users = ldap_test.fetch(:test_users, '').split(',') groups = ldap_test.fetch(:test_groups, '').split(',') [users, groups].each {|l| l.map(&:strip).reject(&:blank?) } @test = LdapTest.new(@ldap_setting) @test.bind_user = ldap_test[:bind_user] @test.bind_password = ldap_test[:bind_password] if @test.valid? @test.run_with_users_and_groups(users, groups) else render 'ldap_test_invalid' end end ...
i take this plugin: https://github.com/eea/redmine_ldap_sync
Info about ruby and rails versions:
Ruby version 2.7.6-p219 (2022-04-12) [x86_64-linux] Rails version 5.2.6.3
Upvotes: -3
Views: 66
Reputation: 834
variable ldap_test
is nil, because params does not have ldap_test key-value
so calling ldap_test.fetch
raises this error
Upvotes: 0