Mam pytanie jak w rails ustawić by korzystał z OrderedHash domyślnie?
Tak wiem, że w 1.9 już jest domyślnie.
a mianowicie problem wyglada tak, że params[:costam] idzie w hashu i potrzebuje je odebrac dokladnie w tej samej kolejnosci jak byly wprowadzane, a z hash jak jest w 1.8 wiadomo. Znalazlem gem orderedhash tylko pytanie jak zmusic rails by korzystał z niego domyślnie dla wszytskich hashy
Już lepszy byłby monkey-patch na metodę która opakowuje parametry w hash.
Jak chcesz zmienić domyślny hash dla całych railsów spróbuj coś takiego:
Object.send(:remove_const, :Hash)
Object.const_set(:Hash, OrderedHash)
Ta metoda zadziała jeśli hash tworzony jest przez Hash.new, w przypadku użycia ‘{}’ używany będzie nadal domyślny rubiowy hash.
Poza tym ordered hash jest zaimplementowany w activesupport, więc nie trzeba używać nowego gema. Zobacz ActiveSupport::OrderedHash