jbbarth / redmine_better_crossprojects

Temporary plugin to handle usability problems discussed on redmine.org #5920
http://www.redmine.org/issues/5920
12 stars 8 forks source link

[ERROR] projects#index (ActionView::Template::Error) "undefined method `remote' for #<Hash:0x007f549429f898>" #13

Closed archonwang closed 6 years ago

archonwang commented 6 years ago

@jbbarth , error log

An ActionView::Template::Error occurred in projects#index:

  undefined method `remote' for #<Hash:0x007f549429f898>
  plugins/redmine_better_crossprojects/app/models/project_query.rb:75:in `block in available_filters_as_json'

-------------------------------
Request:
-------------------------------

* URL : http://192.168.1.41/projects
  * HTTP Method: GET
  * IP address : 10.1.200.166
  * Parameters : {"controller"=>"projects", "action"=>"index"}
  * Timestamp  : 2017-12-06 02:42:14 UTC
  * Server : jira
  * Rails root : /opt/redmine-3.3
  * Process: 30786

-------------------------------
Session:
-------------------------------

  * session id: "b0a44c1bc8d948a3faff7f3421c44321"
  * data: {"session_id"=>"b0a44c1bc8d948a3faff7f3421c44321",
   "user_id"=>8,
   "tk"=>"9ff9069ace81daefe6763990b500c40a5049ab29",
   "sudo_timestamp"=>1512526367,
   "access_count_table"=>{93=>1},
   "_csrf_token"=>"95S4Arf0Trr+XZxuFfhXHoJXq1zx9NEHIg/R3FIxMpk=",
   "query"=>
    {:project_id=>51,
     :filters=>{"status_id"=>{:operator=>"o", :values=>[""]}},
     :group_by=>"parent",
     :column_names=>nil,
     :totalable_names=>[:estimated_hours, :spent_hours]},
   "issues_index_sort"=>"id:desc",
   "project_query"=>
    {:filters=>{"status"=>{:operator=>"=", :values=>["1"]}},
     :group_by=>nil,
     :column_names=>nil},
   "projects_index_sort"=>"lft"}

-------------------------------
Environment:
-------------------------------

  * GATEWAY_INTERFACE                              : CGI/1.2
  * HTTP_ACCEPT                                    : text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
  * HTTP_ACCEPT_ENCODING                           : gzip, deflate
  * HTTP_ACCEPT_LANGUAGE                           : zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
  * HTTP_CONNECTION                                : keep-alive
  * HTTP_COOKIE                                    : _redmine_session=S2hBNmZWSmdINTExSE1FbWM3NDNyRFFkUFpQcEo1QXZSUCtZVGJKZ3F5SE9VQisyVDJGRFJtdFA5OEFQQjA3aUw4WnhqRFpOaVBZbitadjdkVjl4ZVI2QjByYVMzYWw0ZzhjM0ViczBCVVhLU0NGRXEwdUM4aS93Z3lZUTV1aXRsQmFoS0Q4UW4xRmJybE9Zb3JGd0xpU0RPQ0tRVXQ0enFVVzM5bHpKVTh5WTgxaXJYL2JVazVBODZiUlMxckRqb0UvTnBMSFA2WmJBQmIzcDRZcjU4cUVIZmlBMVNZOVpJQ1o3OGdBOC9qYUF6RW1qd1U5VE1nL3FTN3pHK3pwd01MNmk2U1BKWUMwRW1oU0lkTkw2alhERVdRR2U2c1ozZ2RtdUgrVnlkcCtYay9sb2FrWFl5a21mQUpKeitxYkNFQlpoTVB2QSszSldWckZBeGd3T0FJbndnZ3JONVc2SlFjejl6MmpzZUtuKzk0cGhpNXA2VE1pdnllYjZvakRyNHgvMjZvTlFjRHZ3bGZHSWw0YzNNOHhZWVpXVFo5R0pJeDM0SysrQnN1KzBpNGtDZThGSUd3SC9PYUQ3SUc0dmp3Umc5SmVJak5LSVk5aTJkOUFnaS83QnBRbjYyYmVVYWdBdkovUEc1R2l5M3JTZWU0bHJtMkh0WEtDQWdiR2RUQUVSY0NYWDU1VVk1eGZxdmM3bFp5WEN3ejhrcHNPRXRVNmxvSGdwQndaVEE0QWV0cFVQNURVSmcxbXowalNSY0lIdFR2ZHhmU2FGT1ZjaEUyMzhxaHhBNUYyclBLSlA4MUo5SFNwVVpTTmxwMU1ZaklUZWs3dm0yN2hqRXE0bS0tcWNLMUtQbkd1c0I4ak1adlpDc3ljQT09--1752a280030147dcbdcbca4db337fb17140eb85d
  * HTTP_HOST                                      : 192.168.1.41
* HTTP_REFERER : http://192.168.1.41/
  * HTTP_UPGRADE_INSECURE_REQUESTS                 : 1
  * HTTP_USER_AGENT                                : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0
  * HTTP_VERSION                                   : HTTP/1.1
  * ORIGINAL_FULLPATH                              : /projects
  * ORIGINAL_SCRIPT_NAME                           :
  * PATH_INFO                                      : /projects
  * QUERY_STRING                                   :
  * REMOTE_ADDR                                    : 10.1.200.166
  * REQUEST_METHOD                                 : GET
  * REQUEST_PATH                                   : /projects
  * REQUEST_URI                                    : /projects
  * ROUTES_36587460_SCRIPT_NAME                    :
  * SCRIPT_NAME                                    :
  * SERVER_NAME                                    : 192.168.1.41
  * SERVER_PORT                                    : 80
  * SERVER_PROTOCOL                                : HTTP/1.1
  * SERVER_SOFTWARE                                : thin 1.7.0 codename Dunder Mifflin
  * action_controller.instance                     : #<ProjectsController:0x007f5494012580>
  * action_dispatch.backtrace_cleaner              : #<Rails::BacktraceCleaner:0x000000041b84c0>
  * action_dispatch.cookies                        : #<ActionDispatch::Cookies::CookieJar:0x007f5494099670>
  * action_dispatch.cookies_digest                 :
  * action_dispatch.cookies_serializer             :
  * action_dispatch.encrypted_cookie_salt          : encrypted cookie
  * action_dispatch.encrypted_signed_cookie_salt   : signed encrypted cookie
  * action_dispatch.http_auth_salt                 : http authentication
  * action_dispatch.key_generator                  : #<ActiveSupport::CachingKeyGenerator:0x00000009dab688>
  * action_dispatch.logger                         : #<ActiveSupport::Logger:0x00000004660590>
  * action_dispatch.parameter_filter               : [:password]
  * action_dispatch.redirect_filter                : []
  * action_dispatch.remote_ip                      : 10.1.200.166
  * action_dispatch.request.content_type           :
  * action_dispatch.request.formats                : [#<Mime::Type:0x00000003cd08b8 @synonyms=["application/xhtml+xml"], @symbol=:html, @string="text/html", @hash=169813293307255439>]
  * action_dispatch.request.parameters             : {"controller"=>"projects", "action"=>"index"}
  * action_dispatch.request.path_parameters        : {:controller=>"projects", :action=>"index"}
  * action_dispatch.request.query_parameters       : {}
  * action_dispatch.request.request_parameters     : {}
  * action_dispatch.request.unsigned_session_cookie: {"session_id"=>"b0a44c1bc8d948a3faff7f3421c44321", "user_id"=>8, "tk"=>"9ff9069ace81daefe6763990b500c40a5049ab29", "sudo_timestamp"=>1512526367, "access_count_table"=>{93=>1}, "_csrf_token"=>"95S4Arf0Trr+XZxuFfhXHoJXq1zx9NEHIg/R3FIxMpk=", "query"=>{:project_id=>51, :filters=>{"status_id"=>{:operator=>"o", :values=>[""]}}, :group_by=>"parent", :column_names=>nil, :totalable_names=>[:estimated_hours, :spent_hours]}, "issues_index_sort"=>"id:desc"}
  * action_dispatch.request_id                     : dbc6e02a-7b97-4db5-9e50-a725f7473d72
  * action_dispatch.routes                         : #<ActionDispatch::Routing::RouteSet:0x000000045c8f88>
  * action_dispatch.secret_key_base                : 59dda17a42803617f96151518b9aeecb94e132c6f140123f1982e1c8ae15d0103ffa854c4d8b0019
  * action_dispatch.secret_token                   :
  * action_dispatch.show_detailed_exceptions       : false
  * action_dispatch.show_exceptions                : true
  * action_dispatch.signed_cookie_salt             : signed cookie
  * async.callback                                 : #<Method: Thin::Connection#post_process>
  * async.close                                    : #<EventMachine::DefaultDeferrable:0x007f54901300b0>
  * rack.errors                                    : #<IO:0x00000000a9d580>
  * rack.input                                     : #<StringIO:0x007f5490130830>
  * rack.multiprocess                              : false
  * rack.multithread                               : true
  * rack.request.cookie_hash                       : {"_redmine_session"=>"S2hBNmZWSmdINTExSE1FbWM3NDNyRFFkUFpQcEo1QXZSUCtZVGJKZ3F5SE9VQisyVDJGRFJtdFA5OEFQQjA3aUw4WnhqRFpOaVBZbitadjdkVjl4ZVI2QjByYVMzYWw0ZzhjM0ViczBCVVhLU0NGRXEwdUM4aS93Z3lZUTV1aXRsQmFoS0Q4UW4xRmJybE9Zb3JGd0xpU0RPQ0tRVXQ0enFVVzM5bHpKVTh5WTgxaXJYL2JVazVBODZiUlMxckRqb0UvTnBMSFA2WmJBQmIzcDRZcjU4cUVIZmlBMVNZOVpJQ1o3OGdBOC9qYUF6RW1qd1U5VE1nL3FTN3pHK3pwd01MNmk2U1BKWUMwRW1oU0lkTkw2alhERVdRR2U2c1ozZ2RtdUgrVnlkcCtYay9sb2FrWFl5a21mQUpKeitxYkNFQlpoTVB2QSszSldWckZBeGd3T0FJbndnZ3JONVc2SlFjejl6MmpzZUtuKzk0cGhpNXA2VE1pdnllYjZvakRyNHgvMjZvTlFjRHZ3bGZHSWw0YzNNOHhZWVpXVFo5R0pJeDM0SysrQnN1KzBpNGtDZThGSUd3SC9PYUQ3SUc0dmp3Umc5SmVJak5LSVk5aTJkOUFnaS83QnBRbjYyYmVVYWdBdkovUEc1R2l5M3JTZWU0bHJtMkh0WEtDQWdiR2RUQUVSY0NYWDU1VVk1eGZxdmM3bFp5WEN3ejhrcHNPRXRVNmxvSGdwQndaVEE0QWV0cFVQNURVSmcxbXowalNSY0lIdFR2ZHhmU2FGT1ZjaEUyMzhxaHhBNUYyclBLSlA4MUo5SFNwVVpTTmxwMU1ZaklUZWs3dm0yN2hqRXE0bS0tcWNLMUtQbkd1c0I4ak1adlpDc3ljQT09--1752a280030147dcbdcbca4db337fb17140eb85d"}
  * rack.request.cookie_string                     : _redmine_session=S2hBNmZWSmdINTExSE1FbWM3NDNyRFFkUFpQcEo1QXZSUCtZVGJKZ3F5SE9VQisyVDJGRFJtdFA5OEFQQjA3aUw4WnhqRFpOaVBZbitadjdkVjl4ZVI2QjByYVMzYWw0ZzhjM0ViczBCVVhLU0NGRXEwdUM4aS93Z3lZUTV1aXRsQmFoS0Q4UW4xRmJybE9Zb3JGd0xpU0RPQ0tRVXQ0enFVVzM5bHpKVTh5WTgxaXJYL2JVazVBODZiUlMxckRqb0UvTnBMSFA2WmJBQmIzcDRZcjU4cUVIZmlBMVNZOVpJQ1o3OGdBOC9qYUF6RW1qd1U5VE1nL3FTN3pHK3pwd01MNmk2U1BKWUMwRW1oU0lkTkw2alhERVdRR2U2c1ozZ2RtdUgrVnlkcCtYay9sb2FrWFl5a21mQUpKeitxYkNFQlpoTVB2QSszSldWckZBeGd3T0FJbndnZ3JONVc2SlFjejl6MmpzZUtuKzk0cGhpNXA2VE1pdnllYjZvakRyNHgvMjZvTlFjRHZ3bGZHSWw0YzNNOHhZWVpXVFo5R0pJeDM0SysrQnN1KzBpNGtDZThGSUd3SC9PYUQ3SUc0dmp3Umc5SmVJak5LSVk5aTJkOUFnaS83QnBRbjYyYmVVYWdBdkovUEc1R2l5M3JTZWU0bHJtMkh0WEtDQWdiR2RUQUVSY0NYWDU1VVk1eGZxdmM3bFp5WEN3ejhrcHNPRXRVNmxvSGdwQndaVEE0QWV0cFVQNURVSmcxbXowalNSY0lIdFR2ZHhmU2FGT1ZjaEUyMzhxaHhBNUYyclBLSlA4MUo5SFNwVVpTTmxwMU1ZaklUZWs3dm0yN2hqRXE0bS0tcWNLMUtQbkd1c0I4ak1adlpDc3ljQT09--1752a280030147dcbdcbca4db337fb17140eb85d
  * rack.request.query_hash                        : {}
  * rack.request.query_string                      :
  * rack.run_once                                  : false
  * rack.session                                   : #<ActionDispatch::Request::Session:0x007f5494007db0>
  * rack.session.options                           : #<ActionDispatch::Request::Session::Options:0x007f5494007d60>
  * rack.url_scheme                                : http
  * rack.version                                   : [1, 0]

-------------------------------
Backtrace:
-------------------------------

  plugins/redmine_better_crossprojects/app/models/project_query.rb:75:in `block in available_filters_as_json'
  plugins/redmine_better_crossprojects/app/models/project_query.rb:71:in `each'
  plugins/redmine_better_crossprojects/app/models/project_query.rb:71:in `available_filters_as_json'
  plugins/redmine_performance/app/views/queries/_filters.html.erb:4:in `block in _e99fc31606d8867c8795355f4ae80a5e'
  plugins/redmine_performance/app/views/queries/_filters.html.erb:1:in `_e99fc31606d8867c8795355f4ae80a5e'
  plugins/redmine_better_crossprojects/app/views/projects/_index_with_filters.erb:19:in `block in _77ef5a2be098d61a5286d7a2569adb64'
  plugins/redmine_better_crossprojects/app/views/projects/_index_with_filters.erb:1:in `_77ef5a2be098d61a5286d7a2569adb64'
  plugins/redmine_better_crossprojects/app/views/projects/index.html.erb:33:in `_a6f1e8562ac76eff3dfd3ca039b970a4'
  plugins/redmine_better_crossprojects/lib/redmine_better_crossprojects/projects_controller_patch.rb:35:in `block (2 levels) in index'
  plugins/redmine_better_crossprojects/lib/redmine_better_crossprojects/projects_controller_patch.rb:33:in `index'
  lib/redmine/sudo_mode.rb:63:in `sudo_mode'
nanego commented 6 years ago

Hello @archonwang I don't know how to reproduce this issue. The plugin is working well on my side and on our production server.

nanego commented 6 years ago

Ok, I understand your problem. The latest version of this plugin is only compatible with Redmine 3.4.x. You are using Redmine 3.3, so you should use an older version of the plugin. This version is tagged for v3.3.4: https://github.com/jbbarth/redmine_better_crossprojects/tree/3.3.4

archonwang commented 6 years ago

Thanks, check it.