在我的应用程序中,我有一个模型,带有:包含描述的字符串字段。在我的本地机器上一切正常,但heroku给了我一个错误信息。我查看了日志并发现错误:
ActiveRecord :: StatementInvalid(PGError:错误:值太长了 类型字符变化(255)
这很有趣,因为完全相同的文本在我的本地计算机上运行良好。 :P我在网上发现了一个建议,我应该生成一个新的迁移更改:字符串格式:text格式。我尝试这样做就像在那里展示的那样:
change_column :your_table_name, :name_of_field, :string, :text
但是得到了错误:
- change_column(:users,:about_me,:string,:text)rake aborted!一个 发生错误,此以及所有后续迁移都已取消:
未定义的方法`include?' for:text:Symbol
问题是如何让它与长字符串一起工作,还有好奇心,为什么它适用于本地机器并且在heroku上崩溃?
提前致谢
再见
答案 0 :(得分:2)
它是change_column :your_table_name, :name_of_field, :text
所以,关于错误。这是PostgreSQL的错误。 PGError:(ERROR: value too long for type character varying(255)
)这意味着heroku正在使用PostgreSQL,但您在本地计算机上使用SQLite。