2016-04-23 65 views
0

我在使用AngularJS中的http POST请求时遇到问题。对$ http的函数调用给我一个SyntaxError:意外的标识符。意外的标识符指的是我的$ http调用中的行url:'rating-add'。 'rating-add'是一个命名的url,所以我不知道为什么它不知道这一点。这是模板:

<script> 
    var app = angular.module('myApp', []); 
    app.controller('myCtrl', function($scope, $http){ 
    $scope.ratings = []; 
    var data = $scope.myForm = {beer_name:'', score:'', notes:'', brewer:''}; 
    $scope.buttonClick = false; 
    $scope.is_clicked = function() { 
     $scope.buttonClick=true; 
     console.log($scope.buttonClick) 
    } 
    $scope.submit_to_form = function() { 
     $http({ 
      method: 'POST' 
      url: 'rating-add' 
      data: data 
     }); 
    } 
    }) 
    </script> 

而urls.py:

from django.conf.urls import url 
from django.contrib import admin 

from ratings.views import home, RatingCreate, delete, edit 

urlpatterns = [ 
    url(r'^admin/', admin.site.urls), 
    url(r'^$', RatingCreate.as_view(), name='rating-home'), 
    url(r'rating/add/$', RatingCreate.as_view(), name='rating-add'), 
    url(r'rating/delete/(?P<row_id>[0-9]+)/$', delete , name='rating-delete'), 
    url(r'rating/edit/(?P<row_id>[0-9]+)/$', edit , name='rating-edit'), 
] 

回答

2

你缺少,。更改此设置:

$http({ 
      method: 'POST' 
      url: 'rating-add' 
      data: data 
     }); 

到:

$http({ 
     method: 'POST', 
     url: 'rating/add/', 
     data: data 
    }); 
+0

但现在我得到一个404(未找到)错误 – user3251349

+1

应该不是你的网址是/等级/ ADD而不是等级加? – ke4ktz

+0

@ ke4ktz是对的。你定义了资源的路径为'url(r'rating/add/$',RatingCreate.as_view(),name ='rating-add')' –