Trier les records 'strings'
Je dois pouvoir attribuer un numéro de référence qui auto-augmente et se présente comme 'yyyy-référence'. Donc si je fais comme ça:
Code:
1 2 3 4 5 6 7 8 9
|
prj = Project.find(:last, :order => 'ref',:conditions=>["ref IS NOT NULL"])
if prj
last_ref = prj.ref
year, ref = last_ref.split('-')
self.ref = Date.today.year.to_s + '-' + (ref.to_i+1).to_s
else
self.ref = Date.today.year.to_s + '-' + 1.to_s
end |
Les records seront triés comme ceci:
Code:
1 2 3 4 5 6 7 8
|
2009-1
2009-11
2009-12
etc...
2009-2
...
2009-9 |
Donc je n'obtiens jamais 2009-10 comme dernier record pour pouvoir créer une nouvelle référence '2009-11'.
Comment resoudre ce problème?