Hola Ricardo pues se supone que el debate esta entre 2 formas de
hacerlo,
1.- almacenar la imagen en el disco tal cual, y poner la direccion de la
imagen en la base de datos
2.- como tu dices un campo blob, image o similar dependiendo del dbms y
guardar la imagen ahi
yo en lo personal prefiero la opcion 1, hice algunas pruebas con mysql y
sqlserver2000 y no me gusto
la opcion 2, sobre todo cuando empiezan a ser archivos mas grandes, se
supone que si son archivos pequeños
como imagenes y son muchos pero muchos puede ser mucho mejor que
tratarlos
con la forma 1 pero ya
es cuestion de ponerse a ver mas detalladamente.
si te quedas con la opcion 1 solo seria jalar la url y poner
o con algun helper, pero la verdad que
aun
no me acostumbro mucho a los helpers
si sigues con la opcion 2 hay varias cosas a considerar
1.- separar la imagen, es decir ( el campo blob) de la tabla que
contiene
los demas datos, esto porque si lo dejas en la misma
el desempeño de las consultas hacia las recetas por ejemplo puede
verse
drasticamente afectado, por eso es mejor
separarlo y solo jalar esa imagen de la receta seleccionada.
2.- configurar el dbms pues algunos vienen limitados en los datos que
pueden
recibir y ese tipo de cosas, para que puedas
obtener imagenes grandes tambien.
habia mas puntos pero de momento no recuerdo pero te recomendaria un
esquema
algo asi
receta
Nombre receta, demas datos
imagen_receta
Receta_id, Imagen (Blob)
y en rubi tendrias
receta << ActiveRecord :: Base
has_many :imagen_recetas
imagen_receta << ActiveRecord ::Base
Belongs_to :receta
asi solo jalas la imagen de la receta especifica y tambien queda el
esquema
de tal forma que la receta puede tener muchas imagenes
cuando lo estes usando seria
receta = Receta.find_by_nombre(‘Mole poblano’)
receta.imagen_recetas.each do |imagen|
#aqui hacemos lo que queramos con cada imagen
end
para mostrarla mmm la verdad que ni idea como, quizas crear un
controlador
de imagen donde le pases de parametro el id de la receta
y el de la imagen y te devuelva la imagen, asi poniendo la url
![]()
y en ese controlador jalarias la imagen
imagen =
imagen_receta.find_by_id_and_receta_id(params[:id],params[:id_imagen])
devolversela al navegador, pero la verdad que ni idea como se haga, lo
hacia
yo en java pero
en ruby todavia no se como quizas un puts imagen xD
suerte espero que te sirva de algo, ya que yo todavia soy novaton en
ruby
llevo cerca de 2 meses nada mas bueno
cualquier duda ahi mandalo a la lista
2007/12/7, Ricardo A. [email protected]: