【问题标题】:bytea barfs when set to nil设置为 nil 时的 bytea barfs
【发布时间】:2014-01-03 03:03:42
【问题描述】:

我正在将二进制数据保存到数据库中以进行进程内成像,因此我可以逐步对图像进行操作,而无需将其往返于我的数据存储中。为了保持数据库大小可管理,我只允许每个用户一次激活一个图像,所以我将所有图像字段设置为 nil,除了活动的那个,所以用户有很多带有图像数据指针的作业,但是只有一个具有实际图像数据。

当我将该字段设置为 nil 时,我收到彩色错误消息 [wtf]

Could not log "sql.active_record" event. NoMethodError: undefined method `bytesize' for nil:NilClass

如果我将字段设置为 '' 事情会很开心。在这种情况下我是否误解了 nil 的使用。

【问题讨论】:

    标签: ruby-on-rails postgresql database-design


    【解决方案1】:

    这意味着您在 ruby​​ 中的某处进行了(验证?)检查,该检查使用字节大小计算二进制字符串的大小。当字符串不是 nil 时,它应该有条件地这样做。

    【讨论】:

      猜你喜欢
      • 2017-05-20
      • 1970-01-01
      • 2020-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-19
      • 1970-01-01
      相关资源
      最近更新 更多