AngularJS:如何将url传递到$http POST
我在AngularJS中遇到http POST请求问题。我得到的错误是:AngularJS:如何将url传递到$http POST,angularjs,django,Angularjs,Django,我在AngularJS中遇到http POST请求问题。我得到的错误是: POST http://localhost:8080/ 403 (Forbidden). 'rating-add' is a named url 所以我不知道为什么它不允许这样。这是模板: <script> var app = angular.module('myApp', []); app.controller('myCtrl', function($scope, $http){ $scop
POST http://localhost:8080/ 403 (Forbidden). 'rating-add' is a named 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>
var-app=angular.module('myApp',[]);
app.controller('myCtrl',函数($scope,$http){
$scope.ratings=[];
var data=$scope.myForm={beer\u name:'',score:'',notes:'',brewer:''};
$scope.buttonClick=false;
$scope.is_=function(){
$scope.buttonClick=true;
console.log($scope.buttonClick)
}
$scope.submit_to_form=函数(){
$http({
方法:“发布”
url:“评级添加”
数据:数据
});
}
})
以及URL.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'),
]
从django.conf.url导入url
从django.contrib导入管理
从ratings.views导入主页、评级创建、删除、编辑
URL模式=[
url(r“^admin/”,admin.site.url),
url(r'^$',RatingCreate.as_view(),name='rating-home'),
url(r'rating/add/$,RatingCreate.as_view(),name='rating-add'),
url(r'rating/delete/(?P[0-9]+)/$”,delete,name='rating-delete'),
url(r'rating/edit/(?P[0-9]+)/$”,edit,name='rating-edit'),
]
您需要像这样附加一个前导斜杠-
url : '/rating/add'
查看文档
你应该从Django打印出你的路线,以找到投递地点
这不起作用,因为“评级添加”是一个命名的url。因此/rating add与任何urlconf都不匹配。但即使我尝试“/rating/add/”时,仍然会出现相同的错误。您是否尝试删除尾部斜杠?或者尝试评级/添加/1感谢您的帮助。我如何打印我的路线?请检查此项您可以像这样使用-$./manage.py show\u URL