簡體   English   中英

Django 從前端返回字典?

[英]Django returning dictionary from front end?

我在我的 Django 視圖之一中將字典從前端傳遞到后端。 設置是這樣的:

$.ajax({
        type: "POST",
        url: '/my/url',
        data: {
            'patients': '{{ appointments.appointments.items }}'
        },
        dataType: 'json',
                async: false,
        success: function (data) {
              console.log("yay")
        }
      });

這是傳回名稱等的字典,然后我在 python 后端檢索它,如下所示:

if request.method == "POST":
    patients = request.POST.get("patients", None)
    print("patients are", patients)

但是,當我這樣做並打印出患者 dict() 而不是獲取實際字典時,我會得到如下字符串:

dict_items([(153, {'person': 'Samuel', 'time': datetime.datetime(2021, 4, 22, 17, 0, tzinfo=<UTC>), 'number': 'First'})])

不遵循字典格式/甚至真的允許 json 解析等。

我在這里做錯了嗎? {{appointments.appointments.items}} 在獲取請求期間剛剛從后端傳遞到我的 HTML 模板頁面,並且我在同一個文件中使用 JavaScript 訪問它。

這里的任何建議將不勝感激。

我認為,可以通過添加 Eval Method 來解決。

patients = eval(request.POST.get("patients", None))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM