Специальные символы, которые поступают с сервера, не отображаются правильно, но те, что указаны в статическом тексте в html, отображаются в порядке.Кодировка отличия от активной записи для просмотра
У меня есть запись в моей базе dev. Это название «Légende».
[1] pry(main)> Record.last.title
Record Load (0.3ms) SELECT "records".* FROM "records" ORDER BY "records"."id" DESC LIMIT 1
=> "Légende"
[2] pry(main)> Record.last.title.encoding
Record Load (0.2ms) SELECT "records".* FROM "records" ORDER BY "records"."id" DESC LIMIT 1
=> #<Encoding:UTF-8>
Когда я хочу #show это, на мой взгляд, он печатает Le‘gende
. Это не обычная проблема с кодировкой, потому что она не печатает é
или é
.
Плюс, если я копирую и вставляю Le‘gende
с веб-страницы, он снова становится Légende
. Это странно.
записи # показать
def show
@record = Record.find(params[:id])
end
show.html.erb
<h1>Bibliothèque</h1>
<h2><%= @record.title %></h2>
конфигурации/application.rb
config.i18n.default_locale = :fr
config.encoding = "utf-8"
макет/application.html.erb
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta charset="utf-8">
application_controller.rb
class ApplicationController < ActionController::Base
# encoding: utf-8
protect_from_forgery with: :exception
end
Я не знаю, куда идти отсюда.