ruby-on-rails – Heroku迁移:类型“bytea”不允许使用类型修饰符

我在Heroku上运行了一些迁移,我遇到了这个问题.我在其中一个迁移中有这一行来创建一个新表:
t.binary :file,:limit => 10.megabytes

Heroku给了我这个Postgresql错误

An error has occurred,this and all later migrations canceled:

PGError: ERROR:  type modifier is not allowed for type "bytea"
LINE 1: ..."file" bytea(10485760)...
                                                         ^
: CREATE TABLE "files" ("id" serial primary key,"file" bytea(10485760),"created_at" timestamp,"updated_at" timestamp)

如何更改我的迁移,以便它与MysqL和Postgre一起使用?

解决方法

来自Heroku的文档:

二进制字段限制

原因:Postgresql不限制二进制字段.使用:limit选项添加:binary字段的任何迁移都会引发语法错误.

解决方案:如果可能,请省略:二进制字段的限制 – 或者在运行之前测试数据库.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...