亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪(fǎng)問(wèn)板塊 發(fā)新帖
查看: 2577 | 回復(fù): 0
打印 上一主題 下一主題

django中的newforms系統(tǒng)學(xué)習(xí)記錄(一) [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2008-08-23 20:34 |只看該作者 |倒序?yàn)g覽
1.django的form系統(tǒng)現(xiàn)在包括oldforms,newforms,默認(rèn)forms指向oldforms.
newforms中包含主要包含fields(Field類(lèi),類(lèi)型集和表單框內(nèi)容的校驗(yàn)規(guī)則)、forms(Form類(lèi))、models(從models轉(zhuǎn)換為forms)、widgets(widget類(lèi),表單框的類(lèi)型)、util(主要有ValidationError異常類(lèi)),而__init__.py導(dǎo)入了newforms中的所有模塊的所有屬性。所以導(dǎo)入newforms系統(tǒng)時(shí),一般只需
from django import newforms as forms
2.從django標(biāo)準(zhǔn)Form類(lèi)繼承,建立新form類(lèi),其中可能還用到Field和Widget類(lèi),
如果要自定義表單框內(nèi)容的輸入校驗(yàn)規(guī)則,只需要定義一個(gè)新方法clean_XXX來(lái)定義自己的校驗(yàn)規(guī)則;
大致格式例:
from django import newforms as forms

class bookforms(forms.Form):
    name=forms.CharField()
   
    def clean_name(self):
        name=self.clean_data.get('name','')
        if ...:
           raise forms.ValidationError('...')
        return name

form類(lèi)實(shí)例對(duì)象(formobject)的is_valid()方法,可以判斷表單輸入內(nèi)容是否通過(guò)驗(yàn)證;
clean_data屬性和clean方法,得到一個(gè)字典對(duì)象,包含驗(yàn)證后的數(shù)據(jù)字典;
如果XXX驗(yàn)證不通過(guò),那么XXX的錯(cuò)誤信息將存儲(chǔ)在formobject.XXX.errors或者formobject.errors.XXX
3.templates中調(diào)用實(shí)例對(duì)象的as_p,as_table,as_ul方法將生成表單,但是這樣生成的表單顯示將有一定局限性,如果既想使用newforms系統(tǒng),又不想使用上述方法來(lái)自動(dòng)生成表單,那么在templates中自定義的表單每個(gè)結(jié)構(gòu)的名字都要和自建form類(lèi)的屬性名完全相同。這樣,我們就可以繼續(xù)使用newforms中的封裝方法。



本文來(lái)自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u1/54760/showart_1145327.html
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專(zhuān)區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過(guò)ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP