J'ai une méthode de mise à jour dans mon contrôleur utilisateurs que j'appelle d'un HTTPService dans Flex 4. La méthode de mise à jour est la suivante:Problème de mise à jour d'un champ de base de données de mon contrôleur
def updateName
@user = User.find_by_email(params[:email])
@user.name = params[:nameNew]
render :nothing => true
end
Ceci est sortie de la console:
traitement UsersController # updateName (pour 127.0.0.1 à 2010-05-24 14:12:49) [POST]
Paramètres: { "action" => "updateName", "nameNew" => "ben", "contrôleur" => "utilisateurs", "email" => "[email protected]"}
SELECT * FROM charge de l'utilisateur (0,6 ms) « utilisateurs "WHERE (" users "." Email "= '[email protected]') LIMITE 1 Achevé en 20ms (Vue: 1, DB: 1) | 200 OK [http://localhost/users/updateName]
Mais quand je vérifie ma base de données, le champ de nom est jamais mis à jour. Qu'est-ce que je fais mal? Merci d'avoir lu.
vous pouvez également utiliser '@ user.update_attribute (: name, params [: nameNew])' qui met à jour l'attribut et enregistre l'enregistrement immédiatement. Particulièrement utile dans un cas comme celui-ci :) – nathanvda