O Rails define um monte de magia com rotas nomeadas que ajudam a suas rotas. Às vezes, especialmente com rotas aninhadas, pode ser um pouco confuso acompanhar o URL que você obterá para uma determinada chamada de método auxiliar de rota. É possível, usando o console do Ruby, ver qual link uma determinada função auxiliar irá gerar? Por exemplo, dado um auxiliar nomeado como post_path (post), quero ver qual URL é gerado.
ruby-on-rails
Derek Thurn
fonte
fonte
app.get "/"
seguida, apenas instance_eval dos métodos desejados, pois agora eles estão protegidos por padrão. Algo como:app.instance_eval{ post_path(post) }
app.teh_path
ainda funciona no Rails 4.0 e é útil para separar os caminhos do mecanismo dos caminhos principais do aplicativo.mount Spree::Core::Engine, :at => '/'
, você acessaria os caminhos através do nome do mecanismo, comoapp.spree_core_engine.some_path
. Ou, se o "engine_name" estiver configurado para ser algo diferente neste código , você fariaapp.spree.some_path
.host
parâmetro da seguinte forma:app.article_url(my_article, host: 'mydomain.com')
você também pode
de dentro das sessões de um console para acessar os auxiliares:
ou
fonte
Rails.application.routes.url_helpers.users_path
?No console do Rails, o aplicativo variável contém um objeto de sessão no qual você pode chamar os auxiliares de caminho e URL como métodos de instância.
fonte
Você sempre pode verificar a saída
path_helpers
no console. Basta usar o auxiliar comapp
fonte
Lembre-se de que sua rota é espaçada pelo nome, como:
Então tente :
resultado
fonte
spree
exemplo, você é um anjo que caiu do céu.