2010-06-29 12 views
0

HAML:travail sur mon premier JSON à partir de zéro et je ne peux pas sembler figurer cette partie simple, à

= link_to 'redeem', redeem_admin_organization_path(organization), :class => 'button_short live redeem' 

Controller:

def redeem 
    @organization = Organization.find(params[:id]) 
    @organization.update_attribute('accumulated_credits', '0') 
end 

redeem.js.haml:

== $("#organization_#{@organization.id} .redeem").html("#{escape_javascript(link_to('redeem', redeem_admin_organization_path(@organization), :class => 'button_short live redeem'))}"); 

Ceci renvoie l'erreur:

NoMethodError (undefined method `accumulated_credits=' for #<Organization:0x2f3242c>): 

Répondre

0

Ne semble pas que l'erreur est liée à haml ou json - Je pense que c'est dans l'affectation @ organization.accumulated_credits; semble que cela n'existe pas

Pouvez-vous confirmer que existe (soit par schema.rb ou en utilisant la console?)

@organization.update_attribute('accumulated_credits', '0') 
... 
NoMethodError (undefined method `accumulated_credits=' for #<Organization:0x2f3242c>): 
+0

Aha! Je peux seulement récupérer ces données dans IRB telles que Organization.first.accumulated_credits (retourne 0). Mais si je fais Organization.first.update_attribute ('accumulated_credit', '0'), cela me donne la même erreur que ci-dessus. Qu'est-ce que ça veut dire? – Trip

+0

Je l'ai eu. C'était parce que cet attribut n'était pas attaché à ce modèle. Donc le problème: D Mais ton pointeur m'a fait comprendre ça. Merci – Trip