【发布时间】:2021-12-19 23:47:30
【问题描述】:
我有一个 React 前端,它有一个包含数组的状态变量。我想将这个状态变量 onClick 传递给我的 Django 的views.py。我到目前为止是这样的:
App.js
const [dataSource, setDataSource] = useState([]); // Where the data is stored in
const requestOptions = {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify(dataSource),
};
const handleSubmit = () => {
fetch("http://localhost:8000/insert", requestOptions);
};
<Popconfirm onConfirm={handleSubmit}>
<Button>Submit</Button>
</Popconfirm>
views.py
def insert(request):
if request.method == 'POST':
json_data = request.POST.get()
# I'm not sure what should I be putting as a parameter for .get() method
return render(request, 'frontend/index.html')
urls.py
...
urlpatterns = [
...
path('insert/', views.insert),
...
]
我是否使用了正确的方法?如果正确,我应该将什么作为参数传递给get() 方法?
*附注我没有将 DRF 用于这种方法,我正在构建一个应用程序,其中 Django 和 React 在一个应用程序中(不是分开的),其中前端是 Django 的一个应用程序。
【问题讨论】:
-
post方法假设以/结尾。并检查 request.body 以接收原始数据,然后您可以使用 json.loads 转换为字典。