Commit aac7fa7e
Changed files (3)
app
models
app/models/photo.rb
@@ -1,4 +1,5 @@
class Photo < ActiveRecord::Base
+ attr_accessible :is_primary, :creation
belongs_to :creation
validates :image, :presence => true
mount_uploader :image, PhotoUploader
db/migrate/20121007153155_migrate_images_to_photos.rb
@@ -0,0 +1,21 @@
+class MigrateImagesToPhotos < ActiveRecord::Migration
+ def up
+ add_column :photos, :is_primary, :boolean
+
+ Creation.all.each_with_index do |creation, index|
+ photo = creation.photos.build({:is_primary => true})
+ photo.created_at = creation.created_at
+ photo.updated_at = creation.updated_at
+ photo.image = creation.image.file
+ photo.save!
+ puts "#{index}. migrated #{creation.image.url} to #{photo.attributes}"
+ end
+ end
+
+ def down
+ Photo.all.where(:is_primary => true).each do |photo|
+ photo.destroy!
+ end
+ remove_column :photos, :is_primary
+ end
+end
db/schema.rb
@@ -11,7 +11,7 @@
#
# It's strongly recommended to check this file into your version control system.
-ActiveRecord::Schema.define(:version => 20121006225021) do
+ActiveRecord::Schema.define(:version => 20121002125009) do
create_table "active_admin_comments", :force => true do |t|
t.integer "resource_id", :null => false
@@ -93,22 +93,6 @@ ActiveRecord::Schema.define(:version => 20121006225021) do
t.integer "category_id"
end
- create_table "delayed_jobs", :force => true do |t|
- t.integer "priority", :default => 0
- t.integer "attempts", :default => 0
- t.text "handler"
- t.text "last_error"
- t.datetime "run_at"
- t.datetime "locked_at"
- t.datetime "failed_at"
- t.string "locked_by"
- t.string "queue"
- t.datetime "created_at", :null => false
- t.datetime "updated_at", :null => false
- end
-
- add_index "delayed_jobs", ["priority", "run_at"], :name => "delayed_jobs_priority"
-
create_table "favorites", :force => true do |t|
t.integer "user_id"
t.integer "creation_id"