Abu*_*eem 3 mysql sql activerecord ruby-on-rails ruby-on-rails-4
在database.yml我有这个配置:
development:
adapter: mysql2
encoding: utf8
...
Run Code Online (Sandbox Code Playgroud)
但ActiveRecord::Base.connection.collation返回latin1_swedish_ci这不是我所期望的,因为默认排序规则是utf8_unicode_ci. 如何在 rails 中获得默认排序规则?
据我所知,您可以在两个地方检查它,记住您还必须检查您的 mysql 数据库。对于 ruby on rails,您可以检查配置并在 database.yml 文件末尾按以下内容添加
encoding: utf8mb4
collation: utf8mb4_unicode_ci
Run Code Online (Sandbox Code Playgroud)
重新启动服务器,现在它应该遵循此配置。比检查以下命令
ActiveRecord::Base.connection.collation
Run Code Online (Sandbox Code Playgroud)
现在让我们检查mysql
mysql> show variables like 'collation%';
Run Code Online (Sandbox Code Playgroud)
现在我无法检查这些东西,因为 mysql 没有设置,所以稍后会编辑以确认你们所有人。
| 归档时间: |
|
| 查看次数: |
682 次 |
| 最近记录: |