Estoy intentando hacer un insert en una tabla y un update en otra.
El update q quiero hacer es del campo email de la tabla y tendrÃa q
tener una pinta asÃ:
UPDATE establishments SET email = ‘[email protected]’ WHERE id
= 1
def create
# Inserto la lÃnea en establishment_contents @establishment_content =
EstablishmentContent.new(params[:establishment_content])
if @establishment_content.save
# Actualizao la lÃnea en establishments @establishment = Establishment.find(params[:id])
if @establishment.update_attributes(params[:email])
redirect_to :action => ‘linkMenu’
end
end
end
El insert la hace correcto, pero el update me da el siguiente error:
Os he hecho caso y he separado el alta de las actualizaciones.
El alta me funciona correctamente, pero las actualizaciones no…
Con este código
def update @establishment_content = EstablishmentContent.find(params[:id]) @establishment_content.update_attributes(params[:establishment_content])
end
Me da el siguiente error
Couldn’t find EstablishmentContent without an ID
Cuando tengo los siguiente parámetros donde sà tengo el id:
“establishment_content”=>{“title”=>“Sobre el Bar”,
“establishment_id”=>“1”, “id”=>“14”, “description”=>“texto sobre mod”,
“introduction”=>“intro sobre mod”}
Y en otro update que me pasó Pablo
def update_mail @establishment = Establishment.find(params[:id]) @establishment.update_attribute(:mail, parmas[:mail)
end
Me dice lo mismo
“establishment”=>{“id”=>“1”, “email”=>“[email protected]”}
Puede ser por mandar en el request datos de dos modelos distintos a un
sólo controller??
En la primer linea encuentras el establishment, y en la segunda cuando
lo
quieres actualiuzar tienes dos problemas, primero que al ser uno solo es
update_attribute sin la s al final, y ademas no le estas pasando el
atributo
que vas a actualizar, solo el valor que va a tomar.
En la primer linea encuentras el establishment, y en la segunda cuando
lo
quieres actualiuzar tienes dos problemas, primero que al ser uno solo es
update_attribute sin la s al final, y ademas no le estas pasando el
atributo
que vas a actualizar, solo el valor que va a tomar.