-
Notifications
You must be signed in to change notification settings - Fork 3
画像ファイルの読み込み
baban edited this page Jan 22, 2012
·
3 revisions
画像をfixtureから読み込み時には実際のファイルを利用できると便利なのでFactoryFilterの機能を利用して、読み込みを行う
次のような定義のテーブルを作成する
class CreateUploadImages < ActiveRecord::Migration def self.up create_table :upload_images do |t| t.string :name t.binary :content, length: 5.megabyte t.timestamps end end def self.down drop_table :upload_images end end
画像のファイル名と、そのファイルの中身を格納するcontentというフィールドが存在するのでファイル名からcontentフィールドへ値を挿入するには次のように記述する
# 画像を読み出し Flextures::Factory.define :upload_images do |f| filename = f.name f.name = (Rails.root + f.name).to_s f.content = ActiveSupport::Base64.encode64(IO.read("#{filename}")).gsub(/^/, " ") end