2010-05-19 7 views
3

J'ai un champ date_select dans mon application rails comme suit:Rails date sélectionnez les options?

<%= f.date_select :dateinstructed %> 

Je voudrais réorganiser les listes déroulantes montrent qu'ils sortie comme:

DD/MM/YYYY 

D'après ce que j'ai lu vous pouvez utiliser l'option: la commande, mais je ne suis pas sûr comment utiliser effectivement cette option:

<%= f.date_select :dateinstructed, :order = {:day, :month, :year} %> 

Évidemment, cela ne va pas, mais qu'est-ce que je suppose d pour mettre à la place du:

:day, :month, :year 

Toute aide serait appréciée!

Merci,

Danny

Répondre

21

Je pense qu'il devrait être:

<%= f.date_select :dateinstructed, :order => [:day, :month, :year] %> 

Espérons que cela aide.

+2

reffer http://api.rubyonrails.org/classes/ActionView/Helpers/DateHelper.html#M001698 – Salil

+0

Merci, la raison pour laquelle je ne pouvais pas le faire fonctionner c'était ligne du lien de l'API que vous m'avez montré: date_sélection (nom_objet, méthode, options = {}, html_options = {}) J'utilisais options = {} non options = [] – dannymcc

+0

Eh bien, pas vraiment ... Vous utilisaient 'options = {}' mais il était caché à vous. Les fonctions d'aide de formulaire dans les rails supposeront que tous les paramètres passés après les paramètres requis sont un hachage à moins que les options et html_options ne soient implicitement transmises. Ainsi, dans votre cas, après les paramètres de son rail, vous passez ce 'f .date_select: dateinstructed, {: order => [: jour,: mois,: année]}, {} '. C'est pourquoi, lorsque vous voulez des options html, vous devez fermer les options entre accolades ({}). –

0

Que diriez-vous ceci:

prompt: { day: 'Select day', month: 'Select month', year: 'Select year' } 
Questions connexes