Używam ścieżki polimorphic_path i trochę błędów. Ta metoda wymaga nieokreślonego pomocnika trasy. Jak mogę zdefiniować (jak zwykła metoda) własny pomocnik trasy, który będzie użyty jak "nazwa_modelu_modelu, nazwa_modelu itd."?Jak zdefiniować własne pomocników routingu w szynach 3?
5
A
Odpowiedz
2
Znam jedną możliwą odpowiedź dla _path, ale to samo nie działa dla mnie _url. Ktoś wie dlaczego?
# at the bottom of config/routes.rb
module ActionView::Helpers::UrlHelper
def model_name_path model, args={}
# your implementation
end
end
4
To rozwiązanie sprawdziło się u mnie.
Dodaj ten kod na końcu pliku config/routes.rb
. Pamiętaj, aby zastąpić MyApp
nazwą aplikacji.
MyApp::Application.routes.named_routes.module.module_eval do
def model_name_path(*args)
# Your code here
end
def model_name_url(*args)
# Your code here
end
end
MyApp::Application.routes.named_routes.instance_eval do
@helpers += [:model_name_path, :model_name_url]
end
Te niestandardowe metody będą dostępne w kontrolerach, widokach i testach.
+1
w Rails 4: Rails.application.routes.named_routes.url_helpers_module.module_eval do ... – luckyjazzbo
Powiązane problemy
- 1. Jak korzystać z pomocników routingu w modelu z Rails 3?
- 2. Pomocników ścieżki Ruby na szynach
- 3. W języku C# jak zdefiniować własne wyjątki?
- 4. Backbone.js - Gdzie zdefiniować pomocników widoku?
- 5. różnica między zakresem i nazw 3 routingu ruby-on-szynach
- 6. Jak mogę sprawić, by Capybara korzystała z Pomocników routingu
- 7. Jak zdefiniować niestandardową ścieżkę w szynach?
- 8. Czy potrafisz zdefiniować własne operatory w F #?
- 9. Czy można zdefiniować własne błędy w Eclipse?
- 10. default_scope w szynach 3
- 11. Jak mogę ustawić domyślną wartość parametru w routingu w szynach 3
- 12. Metoda "puts" w szynach 3
- 13. Dodawanie pomocników do routingu do klasy jako metod klasowych
- 14. Routing routingu: Podawanie wartości domyślnych dla pomocników ścieżek
- 15. Jak zdefiniować pole opcjonalne w protobuf 3
- 16. Różnica między <% ... %> i <%= .. %> w szynach 3
- 17. zdefiniować własne wyjątki z konstruktorów przeładowanych w Scala
- 18. Czy mogę zdefiniować własne przeciążenia operatora w JavaScript?
- 19. Jak zdefiniować własny serwer z Railsami 3
- 20. dekodowanie base64 przez spinacz w szynach 3
- 21. Asp.net MVC 3 Powierzchnia routingu nie
- 22. Dziedziczenie tabeli klas w szynach 3
- 23. Układ zagnieżdżony wielopoziomowy w szynach 3
- 24. Brak błędu metoda w szynach 3 app
- 25. Zastąp domyślny generator rusztowania w szynach 3
- 26. Implementacja harmonogramu Rufusa w szynach 3
- 27. Jak mieć pomocników w Hogan.js
- 28. jak uruchomić rspec bez obserwatorów w szynach 3?
- 29. Jak dodać atrybut class, aby wybrać tag w szynach 3
- 30. Jak znaleźć zapis z tablicy dwuwymiarowej tablicy w szynach 3?
Och, myślę, że to działa również dla _url, tylko że dzwoniłem do _url ze kontrolera, a nie widoku. – Ben
Powiedz, że mam nazwę metody pomocniczej o nazwie user_links, gdzie mogę określić nazwę metody na przykład,. Mam model Post. Mój kod wygląda następująco: - ~ moduł ActionView :: Helpers :: UrlHelper def post_name_path post, args = {} # twoja implementacja -> co dokładnie powinno to mieć? koniec koniec ~ – boddhisattva
Przykro mi, próbowałem użyć odpowiedniego bloku kodu, ale jakoś nie udało się go w sekcji komentarzy. – boddhisattva