我不能使用react,mobx,axios,django来调用我的django上的函数

时间:2017-03-30 05:24:47

标签: django reactjs axios mobx

正在调用我的mobx商店中的函数,但是axios无法找到我的django函数。

store.jsx

import { autorun, observable, action, computed } from 'mobx';
import axios from 'axios'; 

axios.defaults.xsrfHeaderName = "X-CSRFToken";

class ProductyTypeStore {
  @observable producttypelist = [];

  @action addProductType(description){
  	 console.log("before store add");
    axios.post('/addproducttype/')
        .then(function( res ){
          console.log(res);
        }) // then
        .catch(function(err){
        	console.log(err);
        })
        console.log("after store add");

  }
}

var store1 = window.store = new ProductyTypeStore

export default store1

urls.py

urlpatterns = [
url(r'^', erp, name="erp"),
url(r'^addproducttype/$', addProductType, name = "addProductType")

views.py

def erp(request):
context = {}
template = 'index.html'
return render( request, template, context )

def addProductType(request):
print("here @ add")

登录我的manage.py runserver

- 在http://127.0.0.1:8000/启动开发服务器 - 使用CONTROL-C验证服务器。 - [30 / Mar / 2017 03:51:19]“GET / HTTP / 1.1”200 524 - [30 / Mar / 2017 03:51:19]“GET /static/bundles/local/vendors.js HTTP / 1.1”200 366564 - [30 / Mar / 2017 03:51:19]“GET /static/bundles/local/erp-2a384599697b15811b6c.js HTTP / 1.1”200 2088371 - [30 / Mar / 2017 03:51:22]“POST / addproducttype / HTTP / 1.1”200 524

永远不会打印django视图中的我的打印(“here @ add”)。我不知道我的代码有什么问题。

1 个答案:

答案 0 :(得分:0)

事实证明它与我的URLS.PY配置有关。它应该是url(r'^ $',erp,name =“erp”)而不是url(r'^',erp,name =“erp”)。