【问题标题】:Rails Active Admin PUT not updating boolean values (SQL Server)Rails Active Admin PUT 不更新布尔值(SQL Server)
【发布时间】:2013-05-15 02:44:18
【问题描述】:

我在生产环境中切换到 SQL Server,并意识到 Active Admin PUT 调用没有更新我数据库中的某些布尔值。 PUT 调用将返回 302,并且不会更新记录,即使我可以看到参数正在按预期发送。例如,如果一个布尔值设置为 false,而我想将其设置为 true,Active Admin 会正确地将值发送为 value => true,但它不会更新。

我注意到有趣的一件事是,在我们运行测试的 heroku 上,这些字段的值会在 Active Admin 中正常更新。在使用 SQL Server 的生产环境中,值显示为 1 和 0,而不是 true 或 false。我觉得这是问题的一部分。

我的问题是,为什么只有一些布尔值在 SQL SERVER 上显示为 1 和 0,而在 heroku 和 mySQL 上显示为真或假?如何修复这些值以使显示为真和假,而不是 1 和 0?

更多信息。通过 rails 控制台更新这些值,在应用程序中,工作得很好。我可以说 model.field = true 然后 model.save 在所有环境中成功。

【问题讨论】:

  • 不确定 put 问题。是否可以添加一些模型逻辑和/或帮助器以使 1/0 变为 false/true?

标签: mysql ruby-on-rails sql-server activeadmin


【解决方案1】:

我在 heroku 遇到了完全相同的问题。对我来说,我必须在运行迁移后重新启动我的应用程序。

【讨论】:

  • 那行不通。问题在于活动管理员期望布尔值的方式。
【解决方案2】:

我和你有同样的问题,可以通过在许可参数中添加一个布尔字段来解决。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多