在javascript中命名路由助手

时间:2014-07-15 20:07:56

标签: ruby-on-rails

如果我正在做一些ajax的东西,我可以通过抓住它的'action'属性来获得'正常'形式的位置:

'Sign Up': ->
     post_url = $('#form').attr 'action' #=> users/sign_up (for example)

但是,如果我在路线文件中有这个:

post 'users/sign_up', to: 'users#create', as: :user_create

我想知道为什么我不能这样做:

'Sign Up': ->
     post_url = <%= user_create_path %>

虽然支持erb标记,但在使用命名路由时出现此错误:

undefined local variable or method 'user_create_path'

只是想知道为什么会发生这种情况...... 我的意思是使用指定的路线助手可能非常出色。虽然从表单中抓取它可能不那么容易混淆。仍然认为rails / coffeescript gem应该实现这个功能。

1 个答案:

答案 0 :(得分:2)

指定的路径助手可能未包含在控制器/视图之外。 您可以在Rails.application.routes.url_helpers.user_create_path

中访问它们

您也可以使用像js-routes这样的宝石为您完成这项工作。