azymuth
October 21, 2007, 10:24pm
1
Bonjour à tous. J’apprends présentement le Rails avec le livre des
éditions Eyrolles. Voici le fichier de mon modèle:
class Produit < ActiveRecord::Base
connection.execute (‘SET NAMES utf8’)
validates_presence_of :titre, :description, :image_url
validates_numericality_of :prix
protected
def validate
errors.add(:prix, “doit être supérieur à zéro”) unless prix.nil? ||
prix > 0.0
end
end
Juste avec ça, j’ai déjà des erreurs.
app/models/produit.rb:11: syntax error, unexpected kEND, expecting $end
Si quelqu’un pouvait me dire où est l’erreur, ça serait bien sympa.
azymuth
October 21, 2007, 11:17pm
2
Salut,
ton modèle est juste. Ça vient d’autre part.
Nicolas B…
Anthony Toto a écrit :
azymuth
October 22, 2007, 11:09pm
3
Jean-François Trân wrote:
Anthony :
def validate
errors.add(:prix, “doit �tre sup�rieur � z�ro”) unless prix.nil? ||
prix > 0.0
end
end
Juste avec �a, j’ai d�j� des erreurs.
app/models/produit.rb:11: syntax error, unexpected kEND, expecting $end
V�rifie d’abord tout les probl�mes d’accents :
change le “doit �tre sup�rieur � z�ro” en “doit etre superieur a zero”,
pour voir si l’erreur persiste.
Quel IDE ou �diteur de texte utilises-tu ? V�rifie l’encodage.
�pluche ce thread (pour la suite) :
http://groups.google.com/group/railsfrance/browse_thread/thread/f987f74e12f2b9a4#
– Jean-Fran�ois.
–
Ruby ( http://www.rubyfrance.org ) on Rails ( http://www.railsfrance.org
)
Alors, j’ai fait comme tu as dit en enlevant les accents et ca n’a pas
fonctionné. J’ai vérifié l’encodage de mon éditeur (SciTe) et il est en
UTF-8. J’ai fait toutes les opérations du lien que tu m’as donné (Mysql
était déjà en UTF-8, mais j’ai rajouté le filtre dans le controleur et
l’encodage dans le fichier YML) et ça n’a rien donné. Donc, par pure
logique, j’ai déterminé que l’encodage ne devait pas être le problème
(oui, je sais, je suis trop perspicace ^^)
Donc, j’ai essayé la vieille méthode d’enlever les lignes qui posaient
problème et j’ai du toutes les enlever sauf la première (la définition
de classe) avant de recevoir un nouveau message d’erreur. Si ça peut
vous donner plus de pistes:
Expected ./app/models/produit.rb to define Produit
azymuth
October 22, 2007, 11:29pm
4
Anthony :
Donc, j’ai essayé la vieille méthode d’enlever les lignes qui posaient
problème et j’ai du toutes les enlever sauf la première (la définition
de classe) avant de recevoir un nouveau message d’erreur. Si ça peut
vous donner plus de pistes:
Expected ./app/models/produit.rb to define Produit
Un fichier /app/models/produit.rb avec juste :
class Produit < ActiveRecord::Base
end
Il te met cette erreur ?
C’est très bizarre.
Tu nous fais un topo : version de Ruby, Rails, OS…
-- Jean-François.
–
Ruby ( http://www.rubyfrance.org ) on Rails ( http://www.railsfrance.org
)
azymuth
October 21, 2007, 11:24pm
5
Anthony :
def validate
errors.add(:prix, “doit être supérieur à zéro”) unless prix.nil? ||
prix > 0.0
end
end
Juste avec ça, j’ai déjà des erreurs.
app/models/produit.rb:11: syntax error, unexpected kEND, expecting $end
Vérifie d’abord tout les problèmes d’accents :
change le “doit être supérieur à zéro” en “doit etre superieur a zero”,
pour voir si l’erreur persiste.
Quel IDE ou éditeur de texte utilises-tu ? Vérifie l’encodage.
Épluche ce thread (pour la suite) :
http://groups.google.com/group/railsfrance/browse_thread/thread/f987f74e12f2b9a4#
– Jean-François.
–
Ruby ( http://www.rubyfrance.org ) on Rails ( http://www.railsfrance.org
)
azymuth
October 23, 2007, 10:35am
6
Bonjour,
Je ne suis pas sur mais il me smeble que tu as un “end” en trop. En
tout cas une recherche sur Google donne cette solution comme la
réponse possible à ce message d’erreur.
Nicolas
azymuth
October 23, 2007, 11:12pm
7
Jean-François Trân wrote:
Anthony :
Donc, j’ai essay� la vieille m�thode d’enlever les lignes qui posaient
probl�me et j’ai du toutes les enlever sauf la premi�re (la d�finition
de classe) avant de recevoir un nouveau message d’erreur. Si �a peut
vous donner plus de pistes:
Autre question : les autres mod�les marchent ?
– Jean-Fran�ois.
–
Ruby ( http://www.rubyfrance.org ) on Rails ( http://www.railsfrance.org
)
Après que tu ailles dit ça, j’ai fait le test et les autres modèles
marchaient très bien.
Alors, j’ai tout simplement détruit tous les fichiers de modèles et les
fichiers ratachés et j’ai fait un nouveau generate. Et maintenant, ça
fonctionne parfaitement. Je vais donc recommencer ce que j’ai fait et on
verr bien.
azymuth
October 22, 2007, 11:31pm
8
Anthony :
Donc, j’ai essayé la vieille méthode d’enlever les lignes qui posaient
problème et j’ai du toutes les enlever sauf la première (la définition
de classe) avant de recevoir un nouveau message d’erreur. Si ça peut
vous donner plus de pistes:
Autre question : les autres modèles marchent ?
– Jean-François.
–
Ruby ( http://www.rubyfrance.org ) on Rails ( http://www.railsfrance.org
)
Salut,
Expected ./app/models/produit.rb to define Produit
J’ai eu récement cette erreur en réveillant un projet Rails 1.1.6 sous
1.2.5.
Un rm bien senti dans vendor/plugins/bundled_ressources et c’est
reparti…
Mon conseil, visiter les plugins et faire le ménage…