J'ai un tableau qui contient des dates et des valeurs. Un exemple de la façon dont il pourrait ressembler:Ruby façon de boucler et de vérifier les valeurs suivantes les uns par rapport aux autres
[
{'1/1/2010' => 'aa'},
{'1/1/2010' => 'bb'},
{'1/2/2010' => 'cc'},
{'1/2/2010' => 'dd'},
{'1/3/2010' => 'ee'}
]
Notez que certaines des dates se répètent. J'essaye de produire ceci dans un format de tableau et je veux seulement montrer des dates uniques. Donc je fais une boucle avec le code suivant pour obtenir la sortie désirée.
prev_date = nil
@reading_schedule.reading_plans.each do |plan|
use_date = nil
if plan.assigned_date != prev_date
use_date = plan.assigned_date
end
prev_date = plan.assigned_date
plan.assigned_date = use_date
end
Le tableau résultant sera alors ressembler à quelque chose comme ça
1/1/2010 aa
bb
1/2/2010 cc
dd
1/3/2010 ee
Ce beau travail, mais je suis nouveau à ruby et je me demandais s'il y avait une meilleure façon de le faire.
Je voudrais voir le code utilisé pour générer les données d'exemple. Ce code pourrait probablement être changé pour le rendre plus facile d'obtenir le format désiré. Le tableau de hachages avec des paires clé/valeur unique n'est pas trop commun. –
Les données sont dans ce format car elles correspondent à mon modèle. Mon instance de modèle a une date et un champ de type chaîne. – Lan