仅通过AngularJS管理网址

时间:2014-12-27 07:56:49

标签: angularjs django-rest-framework

在我的AngularJS应用程序中,我通过Angular-UI-router进行了简单的URL配置:

config(function($stateProvider, $urlRouterProvider, $locationProvider){
            $urlRouterProvider.otherwise("/");

            $stateProvider
                .state({
                    name: 'land',
                    url: "/",
                    templateUrl: "main_ang.html",
                    controller: 'showSomethingCtrl'
                })
                .state({
                    name: 'tournaments',
                    url: "tournaments/",
                    templateUrl: 'tournaments_list_ang.html',
                    controller: 'showTournamentsCtrl'
                });
            $locationProvider.html5Mode(true);
        })

首先这个应用程序是基于Django的,但是现在我想用Django Rest Framework和AngularJS重写它,这就是为什么我从Django的urls.py注释掉'/ tournaments /'URL:

urlpatterns = patterns('',
                       url(r'^$', "chess_tournaments.views.Main", name='main'),
                       # url(r'^tournaments/$', 'chess_tournaments.views.TournamentsView', name='tournaments'),
                       # url(r'^tournament/(?P<tournament_id>\d+)/$', 'chess_tournaments.views.TournamentDetailView',
                       #     name='tournament_detail'),
                       url(r'^tournament_new/$', 'chess_tournaments.views.TournamentDetailView', name='tournament_new'),...

当我首先导航到127.0.0.8000然后单击与ui-sref =“tournaments”的正确链接时,一切顺利。但导航到127.0.0.8000/tournaments会导致“找不到页面(404)”错误。我想我应该首先向客户的浏览器提供angular的应用程序,但是这样做的正确方法是什么?

0 个答案:

没有答案