Upload ficheros

Buenas, soy nuevo en Ruby y en Rails.

He hecho una pequeña aplicación para dar de alta usuarios y tengo un
apartado para subir una foto a MySQL. La parte de crear un nuevo usuario
va
perfectamente. Mi problema es al Editar el usuario y querer cambiar la
fotografía. No se cual es el problema, porque copio la forma de proceder
del
“new” al “edit”. Os copio los ficheros.

CONTROLLER
def new
@usuario = Usuario.new
@asociaciones = Asociacion.find(:all, :order=>“denominacion”)
@seleccion = []
end

def create
@usuario = Usuario.new(params[:usuario])
@usuario.asociacion = Asociacion.find(params[:asociacion])
@usuario.espacio_id = session[:espacio]
@usuario.foto = params[:usuario][:foto].read
@usuario.content_type = params[:usuario][:foto].content_type

if @usuario.save
  flash[:notice] = 'Usuario creaado correctamente.'
  redirect_to :action => 'list'
else
  @asociaciones = Asociacion.find(:all, :order=>"denominacion")
  render :action => 'new'
end

end

def edit
@usuario = Usuario.find(params[:id])
@seleccion = []
@asociaciones = Asociacion.find(:all, :order=>“denominacion”)
@seleccion = @usuario.asociacion.id

end

def update
@usuario = Usuario.find(params[:id])
@usuario.asociacion_id = params[:asociacion]
@usuario.foto = params[:usuario][:foto].read
@usuario.content_type = params[:usuario][:foto].content_type
if @usuario.update_attributes(params[:usuario])
flash[:notice] = ‘Usuario actualizado correctamente.’
redirect_to :action => ‘show’, :id => @usuario
else
render :action => ‘edit’
end
end

CREAR USUARIO VIEW

Crear usuario

<% form_for :assignment, :url => {:action => ‘create’}, :html =>
{:multipart
=> true} do %>
<%= render :partial => ‘form’ %>
<% end %>

<%= submit_tag “Crear” %>

EDITAR USUARIO VIEW

Editar usuario

<% form_for :assignment, :url => {:action => ‘update’,:id => @usuario},
:html => {:multipart => true} do %>
<%= render :partial => ‘form’ %>
<% end %>

<%= submit_tag “Editar” %>

Muchas gracias si me podéis ayudar. Un saludo.

buenas,

new hace entre poco y nada. Para hacer loq ue dices creo que deberías
fijarte
más en “create” que si te das cuenta es el que utiliza.

<% form_for :assignment, :url => {:action => ‘create’}, :html =>
{:multipart => true} do %>

   Ten por seguro que vas a tener que hacer un .save en algún sitio, 

para
guardar los cambios en la base de datos. (vamos o yo no sabría hacerlo
sin
eso)

Un saludo y suerte con la aplicación!

On Monday 21 April 2008 13:25:24 Luis Miguel Cabezas Granado wrote:

@usuario = Usuario.new

@usuario = Usuario.find(params[:id])
@usuario.content_type = params[:usuario][:foto].content_type

Crear usuario

Editar usuario

Muchas gracias si me podéis ayudar. Un saludo.


Atentamente

David P. Martínez

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs