Django使用list對單個或者多個字段求values值實例
開發環境:Ubuntu16.04+Django 1.11.9+Python2.7
使用list對values進行求值:
單個字段的輸出結果:
price_info=list(Book.objects.filter(auth_id=’Yu’).values(’book_price’))print price_info[{’book_price’: 26}, {’book_price’: 28}, {’book_price’: 27}]
輸出為列表里面包含字典 這樣是因為這個表里有多條符合auth_id=’Yu’的值.
多個字段的輸出結果:
也使用list可以將符合條件的多個字段同時提取出來
entry_list = list(Selleraccount.objects.filter(status=1).values(’number’,’id’,’dealer’))[{’number’: u’1524713362’, ’id’: 8, ’dealer’: ’yw1234’}, {’number’: u’1524792376’, ’id’: 9, ’dealer’: ’yw1234’}]
值得注意的點:
這里需要注意的是,values中的字段信息需要使用單引號進行包裹
如果只有一個符合條件的值,就是一個列表里面有一個字典.如果多個符合條件的值則是多個字典放在列表中
補充知識:Django獲取多個復選框的值,并插入對應表底下
1、實現的功能類似于,多個復選框,后面還有一個備注,之后要把復選框的值和備注一一對應插入數據庫表中,主要提供一個思路,代碼不全。
2、首先,html頁面先設計好,多個復選框還有一個個備注,代碼如下:
<input type='checkbox' name='user_name' value=''> 傻子<input type='input' name='remark' size='100' placeholder='備注'><input type='checkbox' name='user_name' value=''> 瘋子<input type='input' name='remark' size='100' placeholder='備注'><input type='checkbox' name='user_name' value=''> 狗子<input type='input' name='remark' size='100' placeholder='備注'>
3、接下來,看下View層是怎么實現的:
(1)html底下的復選框的name和備注的name都是一樣的,在View底下可以使用下面代碼來獲取復選框和備注的列表:
request.POST.getlist(’user_name’)
(2)接下來就是對應各個復選框的備注,生成所需要的數據,一一對應插入數據庫,這里就附上相對應的代碼了:
user_name_list = request.POST.getlist(’user_name’)remark_list = request.POST.getlist(’remark’) for remark remark_list: user_name = user_name_list[remark_list.index(remark)] user_info_dict = {’user_id’: user_id, ’user_name’:user_name,’remark’: remark, ’create_uid’: create_uid, ’create_time’: create_time} UserInfo.objects.create(**user_info_dict)
以上這篇Django使用list對單個或者多個字段求values值實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。
相關文章:
