2010-10-08 3 views
1

J'ai développé un petit site Web dans les rails 2.3.5 mais quand j'ai voulu le déployer sur un serveur j'ai commencé à avoir quelques problèmes. L'un de ces problèmes est un problème d'interpolation. Chaque fois que je veux formater une date à l'aide i18n je reçois cette exception: ActionView::TemplateError (missing interpolation argument in "%{count} %B %Y, %H:%M" ({:object=>Fri, 08 Oct 2010 20:18:17 UTC +00:00} given)) on line #10 of app/views/contact/archive.html.erb:i18n argument d'interpolation manquant

Ceci est le code qui génère cette exception: <strong><%= t :created_at %>:</strong> <%=l contact.created_at, :format => :long %> <br />

Je l'ai regardé sur Google et a trouvé cela a quelque chose à faire avec une mise à jour du plugin i18n (0.4.0) et cette version était en effet installée sur le serveur. Une idée de comment je peux résoudre ce problème? Parce que je ne pouvais pas trouver de réponse nulle part.

salutations les,

Daan

Répondre

1

Ce problème semble se produire uniquement lorsque vous souhaitez avoir un jour dans une chaîne formatée. Si vous ne pouvez pas mettre à jour les rails, le seul moyen de contourner ceci est de créer votre propre format sans avoir de jour et d'insérer le jour depuis l'objet ruby ​​Time en appelant la méthode .day sur l'objet Date. Donc, dans ce cas, ce serait par exemple:

contact.created_at.day.to_s + " " + l (contact.created_at, :format => "%b %H:%M")