6
votes

Les rails ajoutent une valeur SQL incrément

J'essaie d'ajouter un au champ déjà incrémenté dans la base de données, mais je reçois l'erreur suivante: nométhoderror (méthode non définie code> + 'pour false: Fauxeclass): `

code : P>

Media.increment_counter(:screener_viewed, params[:media_id])


0 commentaires

4 Réponses :


0
votes

examiner attentivement le message d'erreur. Il est indiqué qu'il n'y a pas de méthode d'addition définie pour la falsiflasse, ce qui signifie que Screencer_Viewed contient une valeur booléenne de faux. Vous êtes-vous attendu qu'il contienne un entier ou essayez-vous de retourner la valeur à la vraie?


0 commentaires

16
votes

Utiliser incrément! : xxx

Assurez-vous que Screener_Viewed est de type entier dans votre DB.


2 commentaires

En fait, je viens de trouver cela après avoir affiné ma recherche Google! Je suis toujours nouveau dans les rails et je n'ai aucune idée d'où elle a été toute ma vie, mais j'aimerais certainement toutes les minutes! Merci pour l'aide!


Heureux cela a aidé. Les rails sont définitivement un ouvre-yeux. Je vous conseillerais d'en savoir plus sur Ruby lui-même. La génialité des rails est en grande partie due à la "voie rubis".



0
votes

Pourriez-vous fournir la définition de migration pour le modèle multimédia? On dirait que vous l'avez défini comme un booléen, qui ne prend pas en charge l'opérateur +:

irb(main):002:0> false + 1
NoMethodError: undefined method `+' for false:FalseClass
        from (irb):2


0 commentaires

0
votes

Attention à utiliser l'incrément! Je ne supporte pas la demande simultanée.

http://apidock.com/rail/acterecord/base/incrènement !


0 commentaires