欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

django處理select下拉表單實(shí)例(從model到前端到post到form)

 更新時(shí)間:2020年03月13日 08:54:43   作者:呆萌的代Ma  
這篇文章主要介紹了django處理select下拉表單實(shí)例(從model到前端到post到form),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

現(xiàn)在假如要寫一個(gè)按照"標(biāo)題",'內(nèi)容','作者'等等進(jìn)行針對(duì)性的選擇,這時(shí)需要涉及到使用select下拉表單來(lái)進(jìn)行選擇.django是可以比較簡(jiǎn)單的解決這個(gè)問(wèn)題的.

下面是model:

from django.db import models
 
class TestModel(models.Model):
  SELVALUE = (
    ('標(biāo)題', 'first'), #前面是展示在前端界面的內(nèi)容,后面的'first'是真正存在數(shù)據(jù)庫(kù)中的
    ('內(nèi)容', 'second'),
    ('作者', 'third'),
  )
  select_value = models.CharField(max_length=10, choices=SELVALUE)

接下來(lái)我們寫forms:

from django import forms
 
class SelectTestForm(forms.Form):
  SELVALUE = (
    ('標(biāo)題', 'first'),
    ('內(nèi)容', 'second'),
    ('作者', 'third'),
  )
  sel_value = forms.CharField(max_length=10,widget=forms.widgets.Select(choices=SELVALUE))

然后就可以寫view了:

from django.shortcuts import render
from django.views.generic import View
from .forms import SelectTestForm
 
class TestView(View):
  def get(self, request):
    select_form = SelectTestForm()
    return render(request, 'sel_test.html', { #這里'sel_test.html'使我們的前端頁(yè)面
      'select_form': select_form, # 這里需要把form傳到前端,前端就可以借助這個(gè)form填充界面
    })
 
  def post(self, request):
    select_form = SelectTestForm(request.POST)
    if select_form.is_valid():
      get_value = request.POST.get('sel_value', "") #這里可以取到下拉表單中的值
      #接下來(lái)就是保存數(shù)值與其他邏輯了
 
    else:
      #表單驗(yàn)證未通過(guò)的邏輯,多半要重新填寫或直接給個(gè)404
      pass

這是前端界面'sel_test.html':

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<form method="post" action="">
  <select name="sel_value">
    {# 這里我們遍歷form表單中的SELVALUE這個(gè)字典,然后把key,value成對(duì)取出 #}
    {% for key,value in select_form.SELVALUE %}
      <option value="{{ value }}">{{ key }}</option>
    {% endfor %}
  </select>
  <input type="submit" value="測(cè)試"/>
  {% csrf_token %}
</form>
</body>
</html>

補(bǔ)充知識(shí):Django 表單,模型 結(jié)合前端select 顯示

ModelChoiceField 使用方法

使用ModelChoiceField方法向前端提供模型

后端 forms.py

  default_tester = forms.ModelChoiceField(
    label='測(cè)試人員', queryset=User.objects.all(), required=True
  )

前端代碼

 {% for user in form.default_tester.field.queryset %}
            <option value="{{ user.pk }}">
              {{ user }}
            </option>
          {% endfor %}

以上這篇django處理select下拉表單實(shí)例(從model到前端到post到form)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python驗(yàn)證碼識(shí)別的實(shí)例詳解

    python驗(yàn)證碼識(shí)別的實(shí)例詳解

    現(xiàn)在的網(wǎng)站為了防止機(jī)器人提交表單,圖片驗(yàn)證碼是很常見(jiàn)的應(yīng)對(duì)手段之一。這里就不詳細(xì)介紹了,相信大家都遇到過(guò)?,F(xiàn)在這篇文章就給出用Python識(shí)別驗(yàn)證碼的詳細(xì)示例代碼,文中介紹的很詳細(xì),有需要的可以參考借鑒。
    2016-09-09
  • Tensorflow的梯度異步更新示例

    Tensorflow的梯度異步更新示例

    今天小編就為大家分享一篇Tensorflow的梯度異步更新示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • Python-with open() as f的用法及說(shuō)明

    Python-with open() as f的用法及說(shuō)明

    這篇文章主要介紹了Python-with open() as f的用法及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Tensorflow實(shí)現(xiàn)部分參數(shù)梯度更新操作

    Tensorflow實(shí)現(xiàn)部分參數(shù)梯度更新操作

    今天小編就為大家分享一篇Tensorflow實(shí)現(xiàn)部分參數(shù)梯度更新操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • 關(guān)于Python字符串顯示u...的解決方式

    關(guān)于Python字符串顯示u...的解決方式

    這篇文章主要介紹了關(guān)于Python字符串顯示u...的解決方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-03-03
  • pytorch中交叉熵?fù)p失函數(shù)的使用小細(xì)節(jié)

    pytorch中交叉熵?fù)p失函數(shù)的使用小細(xì)節(jié)

    這篇文章主要介紹了pytorch中交叉熵?fù)p失函數(shù)的使用細(xì)節(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 利用Python繪制創(chuàng)意中秋節(jié)月餅

    利用Python繪制創(chuàng)意中秋節(jié)月餅

    又是一年中秋至——花好月圓夜。turtle庫(kù)作為Python重要的標(biāo)準(zhǔn)庫(kù)之一,是最有價(jià)值的程序設(shè)計(jì)入門實(shí)踐庫(kù),它是程序設(shè)計(jì)入門層面最常用的基本繪圖庫(kù)。本文將使用turtle(海龜)來(lái)繪制中秋創(chuàng)意月餅,感興趣的可以了解一下
    2022-09-09
  • Python實(shí)現(xiàn)同時(shí)調(diào)用多個(gè)GPT的API

    Python實(shí)現(xiàn)同時(shí)調(diào)用多個(gè)GPT的API

    這篇文章主要為大家詳細(xì)介紹了Python如何實(shí)現(xiàn)同時(shí)調(diào)用多個(gè)GPT的API,文中的示例代碼簡(jiǎn)潔易懂,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-09-09
  • Tensorflow 實(shí)現(xiàn)將圖像與標(biāo)簽數(shù)據(jù)轉(zhuǎn)化為tfRecord文件

    Tensorflow 實(shí)現(xiàn)將圖像與標(biāo)簽數(shù)據(jù)轉(zhuǎn)化為tfRecord文件

    今天小編就為大家分享一篇Tensorflow 實(shí)現(xiàn)將圖像與標(biāo)簽數(shù)據(jù)轉(zhuǎn)化為tfRecord文件,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02
  • PyQt5 QLineEdit輸入的子網(wǎng)字符串校驗(yàn)QRegExp實(shí)現(xiàn)

    PyQt5 QLineEdit輸入的子網(wǎng)字符串校驗(yàn)QRegExp實(shí)現(xiàn)

    這篇文章主要介紹了PyQt5 QLineEdit輸入的子網(wǎng)字符串校驗(yàn)QRegExp實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04

最新評(píng)論