2011-09-05 8 views
7

テキストコンテンツを保存するためにBLOB列を作成する必要があります。Rails - ActiveRecordを使用してBLOB列を追加するにはどうすればよいですか?

私は次の操作を行う必要があることをどこかで読んだことがある:

PGError: ERROR: type modifier is not allowed for type "bytea" LINE 1: ..."meta_data" ADD COLUMN "version_comment_extended" bytea(1048... ^: ALTER TABLE "meta_data" ADD COLUMN "version_comment_extended" bytea(10485760)

任意のアイデア:

class AddVersionCommentToMetaData < ActiveRecord::Migration 
    def self.up 
    add_column :meta_data, :version_comment, :binary, :limit => 10.megabyte 
    end 

    def self.down 
    remove_column :meta_data, :version_comment 
    end 
end 

をしかし、それは次のようなエラーメッセージを表示しますか?

私はPostgreSQLを使用しています。 ありがとう!

答えて

10

ダウン部分以外の移行は正しいようです。それは次のようになります。

class AddVersionCommentToMetaData < ActiveRecord::Migration 
    def self.up 
    add_column :meta_data, :version_comment, :binary, :limit => 10.megabyte 
    end 

    def self.down 
    remove_column :meta_data, :version_comment 
    end 
end 

タイプチェックが2回あります。そして、どのバージョンのレールを使用していますか?それは3.0.7のレールでうまくいきます。

+0

実際に私はStackOverflowにコピー貼り付けを行ったときにタイプミスを犯しました(実際のカラム名はversion_comment_extendedですが、わかりやすくするために短くしました)。 –

関連する問題