django學(xué)習(xí)筆記.forms

forms.py

表單模板

from django import forms from mysite import models

建立窗體類Form

#!/usr/bin/env python
# -*-coding:utf-8-*-
class ContactForm(forms.Form):
    CITY = [
        ['TP','Taipei'],
        ['TY','Taoyuang'],
        ['TC','Taichung'],
        ['TN','Tainan'],
        ['KS','Kaohsiung'],
        ['NA','Others'],
    ]
    user_name = forms.CharField(label = '您的姓名',max_length = 50,initial = '李大仁')
    user_city = forms.ChoiceField(label = '居住城市',choices = CITY)
    user_school = forms.BooleanField(label = '是否在學(xué)',required = False)
    user_email = forms.EmailField(label = '電子郵件')
    user_message = forms.CharField(label = '您的意見',widget = forms.Textarea)
常用的字段格式設(shè)置方法

使用ModelForm來產(chǎn)生窗體

class PostForm(forms.ModelForm):
##  captcha = CaptchaField()
    class Meta:
        mood = models.Mood ##指定窗口要引入哪個models
        model = models.Post
        fields = ['mood','nickname','message','del_pass'] ##指定使用models中的哪個字段
         ##以下是把默認(rèn)的英文字段名改為中文字段名
    def __init__(self, *args, **kwargs):
        super(PostForm,self).__init__(*args,**kwargs)
        self.fields['mood'].label = '現(xiàn)在的心情'
        self.fields['nickname'].label = '您的昵稱'
        self.fields['message'].label = '心情留言'
        ##self.fields['enabled'].label = "是否直接顯示在主頁"
        self.fields['del_pass'].label = '設(shè)置密碼'
        ##self.fields['captcha'].label = '請輸入驗(yàn)證碼'
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容