2012-02-29 49 views
5

,当我刚刚通过我的应用程序在自己的生产环境:UTF-8麻烦Rails应用程序传递给生产

  • Debian的
  • nginx的
  • 麒麟
  • MySQL的

在我使用的开发:

  • 的Mac OSX 10.7.3
  • 的WEBrick
  • sqlite的

,当我去查看一些UTF-8字符我得到了一个错误:

ActionView::Template::Error (incompatible character encodings: UTF-8 and ASCII-8BIT): 
    1: render renderer_for(:new) 
    app/admin/projects.rb:122:in `block (2 levels) in <top (required)>' 

在我加入这个我的文件顶部:

# encoding: utf-8 

它使它在我的开发环境中工作但不是在我的制作环境中,有什么想法?

编辑

错误来自这里:

f.has_many :roles do |app_f| 
    app_f.inputs do 
    # if object has id we can destroy it 
    if app_f.object.id 
     app_f.input :_destroy, :as => :boolean, :label => "Supprimer l'utilisateur du projet" 
    end 
    app_f.input :user,  :include_blank => false, :label_method => :to_label 
    app_f.input :role_name, :include_blank => false 
    #app_f.input :role_level, :label => 'Author type', :as => :select, :include_blank => false, :collection => Role::role_list 
    end 
end 

如果我改变当前区域它不会改变任何东西。

编辑

我使用Ruby 1.9.3和3.1.0钢轨我 没有视图来显示,因为我使用的是DSL ActiveAdmin

回答

2

我改变mysql的在我的Gemfile通过mysql2

它工作:)

0

我发现2点你的问题的问题你有没有看到这个问题,我希望答案可以帮助解决你的问题。 :)

Question 1 Question 2

+0

我都试一下,但它不工作:( – Awea 2012-02-29 14:38:34

+0

是线路122则标签标记线?我认为你对特殊的charakter>'<(apostroph)测试有问题,它会移除你的标签。 – bulleric 2012-03-01 12:35:31

+0

没有这个字符的问题,只是一个与MySQL宝石fuc ***问题:) – Awea 2012-03-01 14:31:52

0

verison你使用你没有告诉其红宝石。你必须显示视图代码。

编码管理很难,Ruby/Rails也不例外。

有关Yehuda KatzJEG2的一些关于编码以及Rails如何实现它的伟大文章。

+0

我不知道为什么,但错误行对应于一行没有任何字符串 – Awea 2012-02-29 15:25:00

+0

你可以复制/粘贴你的视图代码? – jlecour 2012-03-01 16:49:15

+1

没有视图代码,我使用ActiveAdmin,并且是我的视图的内部DSL。我通过在我的gemfile中将mysql更改为mysql2来解决我的问题。 – Awea 2012-03-02 09:36:32