2014-12-04 62 views
0

我有一个表的帖子,字符串类型的列内容(255),当我迁移变化,将字符串的类型更改为文本,它确实改变该类型,但我得到文本(255)什么也没有。为了得到这样的结果,我必须做什么:Rails 4 Migration

TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT2 | :limit => 1 to 4294967296 (default = 65536)2 

ps我LOCALMACHINE我可以创建任意长字符串类型的职位,但在Heroku我得到

PG::Error: ERROR: value is too long for type character variyng(255) 

我_change_datatypes_on_posts_from_string_to_text.rb

class ChangeDatatypeOnPostsFromStringToText < ActiveRecord::Migration 
    def change 
    change_column :posts, :content, :text 
    change_column :posts, :title, :text 
    change_column :users, :name, :text 
    end 
end 

回答

-1

使用限制属性尝试...

例如:“change_column:posts,:content,:text,limit:nil”。

On Postgres,a:string,limit:nil实际上与text是同义词。

+0

感谢,它的帮助,但在heroku上迁移后,我仍然得到 PG ::错误:错误:值太长,输入字符variyng(255) 你不知道为什么? – nikolay 2014-12-04 09:01:59