Javascript 角度布线不正常
因此,我尝试在RubyonRails应用程序中尝试角度路由 问题是,当我在一条路径上着陆时,比如说,Javascript 角度布线不正常,javascript,ruby-on-rails,ruby,angularjs,ruby-on-rails-4,Javascript,Ruby On Rails,Ruby,Angularjs,Ruby On Rails 4,因此,我尝试在RubyonRails应用程序中尝试角度路由 问题是,当我在一条路径上着陆时,比如说,“/”,我有一个角度路由,当我着陆时,它应该在我想要的目录中加载一个模板,然后我的Rails服务器将抛出此错误: Started GET "/templates/index.html.erb" for 127.0.0.1 at 2014-12-02 18:03:39 +0200 ActionController::RoutingError (No route matches [GET] "/tem
“/”
,我有一个角度路由,当我着陆时,它应该在我想要的目录中加载一个模板,然后我的Rails服务器将抛出此错误:
Started GET "/templates/index.html.erb" for 127.0.0.1 at 2014-12-02 18:03:39 +0200
ActionController::RoutingError (No route matches [GET] "/templates/index.html.erb"):
所以基本上,它似乎没有尝试从文件夹加载我的文件,而是尝试将我告诉的路径放到URL,然后发出请求
因为如果我将模板url:
替换为/users
,这是我的应用程序中用html响应的实际路由,那么它将有效地路由到它。但这不是我想要的行为
我想用输入调用的路由时指定的模板替换ng视图中的html模板
以下是我的角度布线代码:
App = angular.module("App", ['ngRoute', 'growlNotifications'])
App.config ($httpProvider) ->
authToken = $("meta[name=\"csrf-token\"]").attr("content")
$httpProvider.defaults.headers.common["X-CSRF-TOKEN"] = authToken
App.config ($routeProvider, $locationProvider) ->
$locationProvider.html5Mode true
$routeProvider
.when '/',
templateUrl: 'templates/index.html.erb',
controller: 'VisitorsCtrl'
.when '/users',
templateUrl: '../../views/users/index.html.erb',
controller: 'UsersCtrl'
.otherwise redirectTo: "/"
另外,在我的application.html.erb
中,我将base href
设置为'/'
我的模板当前的位置如下:app/assets/javascripts/angular/templates
,我的路由在angular
文件夹中定义
这里有什么问题
将尝试您的解决方案并报告!好的,我把文件改成了.html,并使用了你给我的路径。但是为什么它是
资产/angular/templates/public.html
?当angular文件夹也在javascripts文件夹中而不仅仅在assets文件夹中时?这是通过链轮从Rails编译和发布资产的方式。如果资产目录中仍然有一个模板,那么在生产环境中可能会有问题……好吧,但我想可以在rails文件夹视图下创建它?要在其中创建模板文件夹?但是该文件夹的路径会是什么呢?