2009-05-11 14 views
9

Wiem, że to drobny problem, ale dlaczego, jeśli używasz rusztowania w RoR, możesz użyć linii takich jak "new_ nazwa modelu tutaj _path" w tagach linków, ale bez użycia rusztowania, I dostać NameError? Na przykład mam prostą książkę adresową, która wykorzystuje podstawowe operacje CRUD. Jestem początkującym RoR, ale chciałem zbudować aplikację bez rusztowań i takie rzeczy nie działają. Porównałem moje config/routes.rb i app/helpers/* z tymi w aplikacji na rusztowaniu i nie są one różne. czego mi brakuje?Pomocników ścieżki Ruby na szynach

Odpowiedz

10

Rusztowanie ustawia trasy zasobów w pliku routes.rb. Trasy zasobów są tym, co daje Ci ścieżkę i pomocników adresów URL. Kiedy nie używasz rusztowania, trasy nie są dodawane, musisz to zrobić ręcznie.

Trasy zasobów mogą być dodawane tak:

map.resources :models 

gdzie: modele jest liczba mnoga nazwa jednego ze swoich modeli.

+0

Mam to ... tak jak powiedziałem w pytaniu, moje config/routes.rb i wszystkie pliki * _helper.rb w mojej aplikacji są takie same jak te w aplikacji z rusztowaniem (z wyjątkiem nazw modeli Oczywiście) –

+2

Nieważne, moje zasoby były pojedyncze na moich trasach ... dzięki! –

+1

@Paul: Zawsze sprowadza się do jakiegoś głupiego szczegółu ... :) –

16

Jednym ze sposobów, aby sprawdzić swoje trasy i ścieżki jest uruchomienie:

rake routes 

wyprowadza on wszystkie swoje trasy i ścieżki.

Powiązane problemy