簡體   English   中英

如何將dict值分配給user_id以創建對象

[英]How to assign dict values to user_id for creating objects

def insertCompany_type(request):
          if request.method == 'POST':
             try:
                data = json.loads(request.body)
                c_type = data["subject"]
                user = get_user_id(request)
                print user
                c_ty=Company_Type(user_id=user,type=c_type)
                c_ty.save(force_insert=True)
             except:
                     print 'nope'
          return JsonResponse({'status': 'success'})

print user

顯示[{'user_id':1L}]

..我怎樣才能分配1至user_idCompany_Type(user_id=user,type=c_type)用於創建對象

當您真正成為一個用戶時(這不會發生您的代碼片段),您可以傳遞一個構造函數參數設置user_id。 例如

myUser = User(name="shalin", user_id=1)
myUser.save()

此外,您只需執行以下操作即可從請求中獲取用戶對象:

user = request.user

這比我想的要容易一些。

如果user是長度為1的列表,其中包含字典,則可以按以下方式提取字典的值:

value = user[0]['user_id']

您可以將代碼修改為:

      if request.method == 'POST':
         try:
            data = json.loads(request.body)
            c_type = data["subject"]
            user = get_user_id(request)
            id = user[0]['user_id']
            c_ty=Company_Type(user_id=id,type=c_type)
            c_ty.save(force_insert=True)
         except:
                 print 'nope'
      return JsonResponse({'status': 'success'})

另外,如果您需要確保id為整數,則將其強制轉換為正確的數據類型,如int(id)

暫無
暫無

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

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