91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

自定義Django Form中choicefield下拉菜單選取數據庫內容實例

發布時間:2020-08-22 16:20:01 來源:腳本之家 閱讀:567 作者:slamx 欄目:開發技術

工作中遇到的問題,自定義了一個forms.form表單,某項需要作出下拉菜單,下拉菜單中的選項需要從數據庫(objectForm models)中提取.

form.py為:

class objectForm(forms.Form):
pre = choicefield(lable = "工作")

最后的解決辦法:

1.定義一個函數

def get_object(request):
  r = [('', '----')]
  for obj in objectModels.objects.all():
    r = r + [(obj.id, obj.name)]
  return r

2.在views.py的視圖函數中加入

form.fields['pre'].choices = get_object(request)

收工!

百度了很多Django Form的問題都沒有得到解決,寫出來方便后來人。

補充知識:django form表單select下拉菜單數據源實時更新(每次訪問獲取一次數據庫內容)

重點是: Form類對象實例化的時候,在類里邊__init()__函數中加入重新更新select數據源

from django.shortcuts import render,redirect
from app3 import models
from app3 import form
from django import forms
from django.forms import widgets
 
#靜態字段,value_list獲取列表[()]加元組返回值
 
 
class Fromdb(forms.Form):
  purpose = forms.CharField()
  user = forms.IntegerField(
    widget=widgets.Select()
    )
  #保證每次訪問重新獲取最新數據
  def __init__(self,*args,**kwargs):
    super(Fromdb,self).__init__(*args,**kwargs)
    self.fields["user"].widget.choices=models.Stu.objects.values_list("id", "name")
 
def formdb(request):
  stus = Fromdb()
  return render(request,"formdb.html",{"stus":stus})

以上這篇自定義Django Form中choicefield下拉菜單選取數據庫內容實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西丰县| 湄潭县| 桂林市| 莫力| 互助| 疏勒县| 临漳县| 金塔县| 万源市| 通许县| 维西| 博罗县| 伊宁县| 浙江省| 伊通| 霍林郭勒市| 汉中市| 开化县| 广水市| 思南县| 凯里市| 竹北市| 包头市| 芜湖县| 沂水县| 余江县| 长沙市| 乌兰浩特市| 梁平县| 蕲春县| 呼玛县| 杭锦旗| 布拖县| 河南省| 图们市| 苏州市| 景东| 麻城市| 柏乡县| 金阳县| 专栏|