2010-10-22 7 views
1

J'utilise Ruby 1.8.6 et 1.2.3 rails (ancienne mais je débogage une vieille application)Pourquoi les champs de date dans mes rails objet/modèle évaluent à zéro quand je peux clairement voir qu'ils ne sont pas?

Un modèle appelé Payperiod a des attributs beginDate et enddate et après avoir importé le db, les dates sont là (apparemment)

Mais dans la console et dans l'application, les attributs de date sont nuls. Pourquoi?

Ci-dessous est un code collé à partir de la console:

pp = Payperiod.find 95

=> #<Payperiod:0xb6d60f90 @attributes={"enddate"=>"2010-10-25", "title"=>"", "begindate"=>"2010-10-12", "id"=>"95", "region_id"=>"1", "active"=>"1"}> 

pp.enddate => nil

Est c'est un problème mysql?

+0

D'autres attributs sont-ils corrects? –

+0

oui autres attributs sont montrant. – Phil

Répondre

0

Il convient de vérifier s'il existe des méthodes définies avec les mêmes noms que les attributs qui remplaceraient le comportement d'enregistrement actif par défaut.

+0

Non, ce n'est pas le cas ici. bonne idée cependant. – Phil

+0

Ok voici une mise à jour: tous mes modèles qui ont des champs de date eval à zéro. Mais tous les autres attributs sont intacts. – Phil

+0

Mais je peux attribuer une "nouvelle" date à l'attribut du modèle. comme ceci: pp.enddate = Time.now – Phil

0

Ce n'est pas vraiment une "réponse" parce que je n'ai pas d'informations spécifiques, mais quand j'ai installé ruby ​​1.8.7 au lieu de 1.8.6, le problème a disparu.

Phil