2012-04-03 2 views
3

J'ai un champ qui peut être vide, donc j'ai besoin d'utiliser Object.try, mais j'ai des problèmes avec la syntaxe lors de l'ajout du format de date.Rails 3 Object.try Syntaxe

<%= @request.assigned_date.strftime("%m/%d/%y") %> 

Comment devrais-je modifier ce qui précède pour inclure le ".try"?

Merci d'avance. Katie

+0

Les réponses ci-dessous sont exactes mais voulaient aussi souligner que vous pouvez le faire sur des hachages aussi bien (ou n'importe quel objet). Exemple, 'params ['user'] ['name']' peut s'appuyer sur '.try' et être représenté comme' params.try (: [], 'user'). Try (: [], 'name') '. –

+0

'params ['user']. Try (: [], 'name')' suffirait si vous êtes dans un contrôleur de rails. – Robin

Répondre

3

Je dirais que ...

<%= @request.assigned_date.try(:strftime, "%m/%d/%y") %> 

Notez que cela ne fonctionnerait pas si votre champ était une chaîne vide. Ça doit être nul.

+0

cela a fonctionné. Merci! –

2

Je voudrais essayer:

<%= @request.assigned_date.try(:strftime, "%m/%d/%y") %> 

Dites-moi si cela a fonctionné pour vous.

+0

cela a fonctionné, aussi! ;) –