情景:
我在 rails(4.2.4)应用程序上有 ruby(2.2.3),处理 Firebird(2.5)数据库通过 activerecord-fb-adapter(1.0.2)。这是一个带有ISO-8859-1编码的遗留数据库,所以我设置了我的database.yml文件,编码为ISO-8859-1。 Rails默认编码是UTF-8,所以我设置了我的application.rb文件:
#config\application.rb
config.encoding = "ISO-8859-1"
Database.yml文件:
#config\database.yml
default: &default
adapter: fb
encoding: ISO-8859-1
create: false
charset: ISO8859_1
development:
<<: *default
database: db/cadastro.fdb
username: sysdba
password: masterkey
host: localhost
ERROR:
来自数据库的数据没问题,但是当我尝试将数据保存到数据库中或试图在浏览器中显示硬编码字符串时,我收到一个字符错误:
浏览器错误:
code:
<th class="text-center">Data de Serviço</th>
output:
Data de Serviço
数据库错误:
seeds:
MotoboyServiceType.where(:service_type => "REDAÇÃO").first_or_create
database:
REDAÇÃO
问题:
如何设置应用程序,以便在数据库中保存正确的数据并使用正确的特殊字符显示字符串?