ruby on rails - Cómo hacer la migración de Rails con Paperclip.
ruby-on-rails rails-migrations (1)
¿Cómo escriben las personas sus migraciones de Rails que involucran Paperclip ? Siento que me podría estar perdiendo algo obvio, ya que ahora he escrito mis propios trucos de ayuda a la migración que lo hacen más fácil y también me ocupo de hacer los cambios necesarios en el sistema de archivos. Y, por supuesto, debe probar ejecutar este tipo de migraciones en un entorno de desarrollo (y de almacenamiento) antes de implementarlo en producción.
Migración de clip de papel renombrar, agregar y eliminar ayudantes
Ayudante de migración de ruta de cambio de clip (no es realmente una migración de base de datos, pero creo que se ajusta bastante bien de todos modos)
¿Hay mejores soluciones o mejores prácticas? Algunas personas parecen crear tareas de rake, etc. que se sienten bastante incómodas.
Hay generadores incluidos en la gema para esto:
Rieles 2:
script/generate paperclip Class attachment1 (attachment2 ...)
Carriles 3:
rails generate paperclip Class attachment1 (attachment2 ...)
p.ej
rails generate paperclip User avatar
genera:
class AddAttachmentsAvatarToUser < ActiveRecord::Migration
def self.up
add_column :users, :avatar_file_name, :string
add_column :users, :avatar_content_type, :string
add_column :users, :avatar_file_size, :integer
add_column :users, :avatar_updated_at, :datetime
end
def self.down
remove_column :users, :avatar_file_name
remove_column :users, :avatar_content_type
remove_column :users, :avatar_file_size
remove_column :users, :avatar_updated_at
end
end
También vea los métodos de ayuda utilizados en el ejemplo en el Paperclip
class AddAvatarColumnsToUser < ActiveRecord::Migration
def self.up
change_table :users do |t|
t.has_attached_file :avatar
end
end
def self.down
drop_attached_file :users, :avatar
end
end