Le 16 sept. 09 à 22:26, Frédéric Logier a écrit :
>
> Le mercredi 16 septembre 2009 à 13:23 -0700, Meshak a écrit :
>> On 16 sep, 22:03, Frédéric Logier <[email protected]> wrote:
>>>> Finalement j'ai fais :
>>>
>>>> h = Host.find(id)
>>>> h.attributes.update({"attribut1" => "toto", "attribut2" => "tata"})
>>>> h.save
>>>
>>> Bon ça me saoule, le serveur reçoit en paramètres les anciennes
>>> valeurs
>>> avec les nouvelles dans des array ....
>>
>> Bonjour Frédéric,
>>
>> Je te recommande cette syntaxe qui ne nécessite pas de "save" :
>>
>> my_host = Host.find_by_id(id)
>> my_host.update_attributes({"attribut1" => "toto", "attribut2" =>
>> "tata"}) if my_host
>
> J'ai essayé, mais update_attributes n'existe pas dans ActiveRessource
> http://api.rubyonrails.org/classes/ActiveResource/Base.html
>
> En gros pour faire un update il faut faire un find puis modifier les
> attributs 1 par 1 puis save....
Si tu veux un update_attributes très simple sur ActiveRessource, c'est
assez simple :
class ActiveResource::Base
# Method inspired by ActiveRecord
# it is very simple, and probably won't react as
ActiveRecord#update_attributes for complex cases and option uses
def update_attributes(attributes)
load(attributes).save
end
end
--
Arthur
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse
[email protected]
-~----------~----~----~----~------~----~------~--~---