migration で blob の代わりに longblob を使わせる
migration で ↓ のように :binary を指定していたら、mysql では blob 型になっていた。
class Init < ActiveRecord::Migration def self.up create_table :articles do |t| t.column :data, :binary end end end
blob じゃなくて longblob を使いたいんだけど…。(blob は 64KB までしか入らない)
どうするのがスマートなのか解らないけど、結局 ↓ のようにして longblob になるようにした。
class Init < ActiveRecord::Migration def self.up case adapter_name when "MySQL" binary_type = "longblob" else binary_type = :binary end create_table :articles do |t| t.column :data, binary_type end end end
mysql でしか実行しないなら adapter_name を見る必要はないけど。