我无法使用 react、mobx、axios、django 调用我的 django 上的函数
I cant call the functions on my django using react, mobx, axios, django
正在调用我的 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 运行服务器
-- 在 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 视图中的 print("here @ add") 从未被打印出来。我不知道我的代码有什么问题。
原来跟我的URLS.PY配置有关系。应该是 url(r'^$', erp, name="erp") 而不是 url(r'^', erp, name="erp")。
正在调用我的 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 运行服务器
-- 在 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 视图中的 print("here @ add") 从未被打印出来。我不知道我的代码有什么问题。
原来跟我的URLS.PY配置有关系。应该是 url(r'^$', erp, name="erp") 而不是 url(r'^', erp, name="erp")。