def to_param
"#{month.strftime("%m-%Y")}"
end
który zmienia mi id numeru z np /numbers/4 na format np: numbers/01-2009 (świetnie ! )
( tylko jeden numer w miesiącu zawsze będzie występował)
natomiast mam problem z napisaniem wyszukiwania w akcji show tak żeby do @numbers
( month jest typem pola datetime i dlatego chciałem uprościć adres url zeby nie było zbędnych śmieci typu 00-00-00 etc.)
ogólnie chodzi mi o to zeby
z params[:id] w którym jest data w formacie 01-2009 zrobić datę w formacie 2009-01-01
wyszukiwanie np: @number = Number.find(:first, :conditions => {:month => ‘2011-08-01’}) jak najbardziej działa chodzi tylko o
zmianę kolejności roku z miesiącem oraz dodania do tego stringu? -01 i sklejenie wszystkiego w rrr-mm-01
Railsy wykorzystują architekturę MVC, a w MVC takich rzeczy nie powinieneś robić w widoku. @number inicjujesz w kontrolerze, w widokach wykorzystujesz już zainicjowaną zmienną
Kontroler:
def index
@number = Number.all(:conditions => {:month =>DateTime.parse(params[:id])})
end
Widok
>> Date.parse('01-2009').to_s
=> "2009-09-01"
jak widać tutaj tkwił błąd chodziło mi nie o 2009-09-01 tylko o 2009-01-01 rozwiązanie okazało się banalnie proste
błąd tkwił w braku “01-”+ dlatego w akcji edit działy się cuda raz wyświetlał raz nie a głównym problemem bło to iż
poprawnie przekazywał rok jednak misiąć był już z kosmosu a raczej z kalendarza pozdrawiam
[quote=czACha]>> Date.parse('01-2009').to_s
=> "2009-09-01"
jak widać tutaj tkwił błąd chodziło mi nie o 2009-09-01 tylko o 2009-01-01 rozwiązanie okazało się banalnie proste