zoukankan      html  css  js  c++  java
  • 解决方案设置centos上redmine2.3.0点击我的帐户和个人设置出现500错误的解决方案

    文章结束给大家来个程序员笑话:[M]

           近来公司要把redmine升级,要求版本为2.3.0,因为之前搭过,所以搭建过程还算顺利,但是搭完之后发现了问题,后台登陆之后,点击“我的帐户”,及“管理”-》“设置”据报错。页面提示Internal error,页面的title是redmine 500 error。log里面的报错信息如下。

    Processing by MyController#account as HTML
      Current user: test (id=3)
      Rendered my/account.html.erb within layouts/base (8.6ms)
    Completed 500 Internal Server Error in 16ms
    
    ActionView::Template::Error (wrong number of arguments (2 for 1)):
        16:   <p><%= f.text_field :firstname, :required => true %></p>
        17:   <p><%= f.text_field :lastname, :required => true %></p>
        18:   <p><%= f.text_field :mail, :required => true %></p>
        19:   <p><%= f.select :language, lang_options_for_select %></p>
        20:   <% if Setting.openid? %>
        21:   <p><%= f.text_field :identity_url  %></p>
        22:   <% end %>
      lib/redmine/i18n.rb:95:in `languages_options'
      app/helpers/application_helper.rb:974:in `lang_options_for_select'
      app/views/my/account.html.erb:19:in `_app_views_my_account_html_erb___278591561__616683068'
      app/helpers/application_helper.rb:989:in `labelled_form_for'
      app/views/my/account.html.erb:9:in `_app_views_my_account_html_erb___278591561__616683068'

        网上有人说,把ruby从1.8.7升级到1.9.3之后此问题就能够解决了。但是通过官网上面的版本对照,redmine2.3.0是可以使用ruby 1.8.7的,再加上我在安装了ruby 1.9.3之后环境出了一堆问题(因为本身此呆板上ruby已搭了两套了,其中有一套不知道是谁搭的,反正是老版本,弗成用了,所以我此次安装之后各种冲突不兼容),所以废弃了此解决方案,大家有兴趣的可以尝尝。

        后来查找到另外一种解决方案,终于解决了我的问题,如下,供大家参考。

    #cd /var/www/redmine
    #vi app/helpers/application_helper.rb
        每日一道理
    生活的无奈,有时并不源于自我,别人无心的筑就,那是一种阴差阳错。生活本就是矛盾的,白天与黑夜间的距离,春夏秋冬之间的轮回,于是有了挑剔的喜爱,让无奈加上了喜悦的等待。

        找到以下内容,进行响应的删除或添加。

    def lang_options_for_select(blank=true)
        (blank ? [["(auto)", ""]] : []) + languages_options   //删除此行
        (blank ? [["(auto)", ""]] : []) +                     //添加此行
          valid_languages.collect{|lang| [ ll(lang.to_s, :general_lang_name), lang.to_s]}.sort{|x,y| x.last <=> y.last }  //添加此行
       end
    #vi lib/redmine/i18n.rb

        找到以下内容,并全体删除。

    # Returns an array of languages names and code sorted by names, example:
        # [["Deutsch", "de"], ["English", "en"] ...]
        #
        # The result is cached to prevent from loading all translations files.
        def languages_options
          ActionController::Base.cache_store.fetch "i18n/languages_options" do
            valid_languages.map {|lang| [ll(lang.to_s, :general_lang_name), lang.to_s]}.sort {|x,y| x.first <=> y.first }
          end      
        end
    # vi test/unit/lib/redmine/i18n_test.rb

        找到以下内容,并全体删除。

        

    def test_languages_options
        options = languages_options
    
        assert options.is_a?(Array)
        assert_equal valid_languages.size, options.size
        assert_nil options.detect {|option| !option.is_a?(Array)}
        assert_nil options.detect {|option| option.size != 2}
        assert_nil options.detect {|option| !option.first.is_a?(String) || !option.last.is_a?(String)}
        assert_include ["English", "en"], options
      end

        再重启碰运气,问题就全体解决啦,BINGO!!!

        

        

    文章结束给大家分享下程序员的一些笑话语录: 问答
    Q:你是怎么区分一个内向的程序员和一个外向的程序员的? A:外向的程序员会看着你的鞋和你说话时。
    Q:为什么程序员不能区分万圣节和圣诞节? A:这是因为 Oct 31 == Dec 25!(八进制的 31==十进制的 25)

    --------------------------------- 原创文章 By
    解决方案和设置
    ---------------------------------

  • 相关阅读:
    .NET XmlNavigator with Namespace
    编程要素
    【FOJ】1962 新击鼓传花游戏
    【POJ】1389 Area of Simple Polygons
    【POJ】2482 Stars in Your Window
    【HDU】3265 Posters
    【HDU】1199 Color the Ball
    【HDU】3642 Get The Treasury
    【HDU】4027 Can you answer these queries?
    【HDU】1542 Atlantis
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3111345.html
Copyright © 2011-2022 走看看