Rails 4迁移

时间:2014-12-04 08:39:54

标签: ruby-on-rails postgresql heroku

我有一个包含字符串类型(255)的列内容的表帖子,当我迁移更改时,将字符串类型更改为文本,它确实更改了该类型,但我得到文本(255)什么都不做。什么即时通讯必须要做到这样的结果:

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

P.S。在我的本地机器上,我可以创建任何长和类型的字符串的帖子,但在heroku上我得到

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

my _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 个答案:

答案 0 :(得分:-1)

尝试使用限制属性...

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

On Postgres,a:string,limit:nil实际上是:text。

的同义词