升级到 Rails 4,似乎 MySQL 严格模式现在默认为 Rails 连接打开。我这样说是因为我的 Rails 应用程序在保存超过 255 个字符的字符串值时出现“Mysql2::Error:列数据太长”。然而,我将相同的查询粘贴到 MySQL 控制台(据报告全局严格模式已关闭)并且它工作正常,只是有截断警告。作为进一步的证据,it says here “Rails 4 默认都使用严格模式”。
我的问题是如何从 Rails 应用程序中关闭严格模式?我宁愿避免立即升级所有内容来支持它。
最佳答案
您可以使用 strict: false
在 database.yml 中设置严格模式,如下所示:
production:
host: ...
username: ...
strict: false
https://api.rubyonrails.org/v4.2.8/classes/ActiveRecord/ConnectionAdapters/MysqlAdapter.html
关于mysql - 如何在 Rails 中关闭 MySQL 严格模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21420122/