PaperClip con base de datos heredada -- mysql campo con ruby-on-rails campo con ruby campo con gem camp Relacionados El problema

Paperclip with legacy database


0
vote

problema

Español

Estoy teniendo una base de datos heredada
QUIERO UTILIZAR LA GEM CLIP PARA LA IMAGEN
PaperClip necesita cuatro parámetros para trabajar
Pero solo estoy teniendo un nombre de archivo I.E Nombre de archivo y descanse todos los parámetros que no están en la base de datos
Entonces, ¿cómo puedo integrar PaperClip usando un solo parámetro
Siguiendo es mi código en modelo

  class ItemMaster < ActiveRecord::Base    set_table_name "MDIMT"    attr_accessible :IMTNAME, :IMTBRIEFDESC, :IMTDETAILDESC, :IMTIMAGE, :IMTCALORIE, :IMTIMTEMCODE1, :IMTIMTEMCODE2,                   :IMTPRICE, :IMTISVARPRICE, :IMTISCUSTOMIZED, :IMTDURATIONMINS, :IMTSEQNUM, :CREATEDBY, :MODIFIEDBY,                    :CREATEDATE, :MODIFYDATE, :EXTRAFIELD1, :EXTRAFIELD2, :EXTRAFIELD3, :EXTRAFIELD4, :IMTISACTIVE, :IMTTAX1,                   :IMTTAX2, :IMTTAX3, :IMTTAX4, :IMTCNDITEMTYPE, :IMTCNDFILTEROPT   alias_attribute :image_file_name, :IMTIMAGE     has_attached_file :image,                     :path => ":rails_root/public/assets/:basename.:extension",                     :url => "/assets/images/:basename.:extension"  end   
Original en ingles

I am having legacy database
I wanted use paperclip gem for uploading image
paperclip need four parameters for working
But I am having only one field i.e file name and rest all parameters not in database
So how can i integrate paperclip using single parameter
Following is my code in model

class ItemMaster < ActiveRecord::Base    set_table_name "MDIMT"    attr_accessible :IMTNAME, :IMTBRIEFDESC, :IMTDETAILDESC, :IMTIMAGE, :IMTCALORIE, :IMTIMTEMCODE1, :IMTIMTEMCODE2,                   :IMTPRICE, :IMTISVARPRICE, :IMTISCUSTOMIZED, :IMTDURATIONMINS, :IMTSEQNUM, :CREATEDBY, :MODIFIEDBY,                    :CREATEDATE, :MODIFYDATE, :EXTRAFIELD1, :EXTRAFIELD2, :EXTRAFIELD3, :EXTRAFIELD4, :IMTISACTIVE, :IMTTAX1,                   :IMTTAX2, :IMTTAX3, :IMTTAX4, :IMTCNDITEMTYPE, :IMTCNDFILTEROPT   alias_attribute :image_file_name, :IMTIMAGE     has_attached_file :image,                     :path => ":rails_root/public/assets/:basename.:extension",                     :url => "/assets/images/:basename.:extension"  end 
           

Lista de respuestas

0
 
vote

PaperClip utiliza getters estándar y colonos para almacenar o recibir valores de la instancia. Tu nube Intenta sobrecargar los Getters and Setters y en su lugar almacenar los datos en un hash serializado:

  class ItemMaster < ActiveRecord::Base   set_table_name "MDIMT"    attr_accessible :IMTNAME, :IMTBRIEFDESC, :IMTDETAILDESC, :IMTIMAGE, :IMTCALORIE, :IMTIMTEMCODE1, :IMTIMTEMCODE2,                   :IMTPRICE, :IMTISVARPRICE, :IMTISCUSTOMIZED, :IMTDURATIONMINS, :IMTSEQNUM, :CREATEDBY, :MODIFIEDBY,                    :CREATEDATE, :MODIFYDATE, :EXTRAFIELD1, :EXTRAFIELD2, :EXTRAFIELD3, :EXTRAFIELD4, :IMTISACTIVE, :IMTTAX1,                   :IMTTAX2, :IMTTAX3, :IMTTAX4, :IMTCNDITEMTYPE, :IMTCNDFILTEROPT    alias_attribute   :image_hash, :IMTIMAGE   default_value_for :image_hash, {}   serialize         :image_hash, Hash    has_attached_file :image,                     :path => ":rails_root/public/assets/:basename.:extension",                     :url => "/assets/images/:basename.:extension"    %w[ image_file_name image_file_size image_content_type image_processing image_updated_at ].each do |field|      # Adds getter and setter for all keys in the array and stored the data in the image_hash instead     class_eval <<-END_OF_RUBY, __FILE__, __LINE__ + 1        def #{field}         image_hash['#{field}']       end        def #{field}=(value)         self.image_hash['#{field}'] = value       end      END_OF_RUBY   end end   
 

Paperclip uses standard getters and setters to store or receive values from the instance. You cloud try to overload the getters and setters and instead store the data in a serialized hash:

class ItemMaster < ActiveRecord::Base   set_table_name "MDIMT"    attr_accessible :IMTNAME, :IMTBRIEFDESC, :IMTDETAILDESC, :IMTIMAGE, :IMTCALORIE, :IMTIMTEMCODE1, :IMTIMTEMCODE2,                   :IMTPRICE, :IMTISVARPRICE, :IMTISCUSTOMIZED, :IMTDURATIONMINS, :IMTSEQNUM, :CREATEDBY, :MODIFIEDBY,                    :CREATEDATE, :MODIFYDATE, :EXTRAFIELD1, :EXTRAFIELD2, :EXTRAFIELD3, :EXTRAFIELD4, :IMTISACTIVE, :IMTTAX1,                   :IMTTAX2, :IMTTAX3, :IMTTAX4, :IMTCNDITEMTYPE, :IMTCNDFILTEROPT    alias_attribute   :image_hash, :IMTIMAGE   default_value_for :image_hash, {}   serialize         :image_hash, Hash    has_attached_file :image,                     :path => ":rails_root/public/assets/:basename.:extension",                     :url => "/assets/images/:basename.:extension"    %w[ image_file_name image_file_size image_content_type image_processing image_updated_at ].each do |field|      # Adds getter and setter for all keys in the array and stored the data in the image_hash instead     class_eval <<-END_OF_RUBY, __FILE__, __LINE__ + 1        def #{field}         image_hash['#{field}']       end        def #{field}=(value)         self.image_hash['#{field}'] = value       end      END_OF_RUBY   end end 
 
 
         
         

Relacionados problema

0  El servidor de GEM comenzó pero no se puede ver en la parte delantera  ( Gem server started but not viewable on front end ) 
He instalado recientemente Ruby 1.9.2 en Linux Ubuntu 10.04 en ejecución 0.7.65 cuando ejecuto gem server6 El servidor se inicia, pero no se puede ver en el...

0  Listas en sitios de rieles  ( Lists in rails sites ) 
¿Existe una forma especial de crear listas de modelos en rieles que permitan una clasificación especial / dinámica / reording / respondiendo en vivo a medida ...

0  STRINGEX NOMETHODERROR: Método indefinido `Initialize_urls '  ( Stringex nomethoderror undefined method initialize urls ) 
Primera pregunta a StackOverFlow: por favor, tenga en cuenta conmigo. Estoy teniendo problemas para comenzar con la gema Stringex. Puse "Gem 'Streadex'" en mi...

0  He estado desesperado por "Error al construir una extensión nativa de gema"  ( Ive been despaired about failed to build gem native extension ) 
Instalé RVM y Ruby 2.0.0 en mi Ubuntu 13.04 y todo estaba bien, pero el último paso salió mal cuando instalo Rails 4.0.0 Lo siguiente es lo que sucedió despué...

0  Bundler de Rails que no está instalando las gemas de Spree  ( Rails bundler not installing spree gems ) 
Estoy tratando de crear una nueva aplicación de rieles que usa Spree. Estoy tratando de instalar la gema textbox2, textbox3, textbox4 and textbox53 y me dij...

0  No se puede instalar EventMachine en Synology DiskStation con OpenSSL  ( Cant install eventmachine on synology diskstation with openssl ) 
Estoy tratando de instalar la gema de EventMachine Ruby en My Synology DiskStation DS211 Linux basado en Linux NAS, pero la instalación falla al intentar crea...

4  Mejor enlace de rubí / gema para CURL / LIBCURL  ( Best ruby binding gem for curl libcurl ) 
Quiero usar la herramienta de curl a través de Ruby. Hasta ahora, he invocado rizo a través de la línea de comandos usando curl y luego analizando los datos...

2  Procesando datos de gema  ( Processing gem data ) 
Tengo una pregunta con respecto a la ejecución de un comando de shell a través de PHP. Mi objetivo es ejecutar con éxito compass compile [project] a través ...

2  Opciones de SASS en rieles cuando se instala como una gema  ( Sass options in rails when installed as a gem ) 
Tengo HAML / SASS instalado como una gema y usándola con rieles. No puedo averiguar cómo pasar las opciones como template_location y style a SASS. Sass::...

6  Problema de recursos de administración activo de rieles  ( Rails active admin resource problem ) 
Recientemente he visto a Railscast 284 sobre ACTIVE ADMIN y quería implementarlo en mi aplicación web, sin embargo, me estoy convirtiendo en un problema cuand...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos