from django.forms importform
from django.forms import
fields
from django.forms import
widgets
from django.forms.models import
modelchoicefield
from django.core.validators import
regexvalidator
from django.core.validators import
validationerror
from web01.models import
book, publish
class
userform(form):
def__init__(self, *args, **kwargs):
super(userform, self).
__init__(*args, **kwargs)
self.fields[
'book
'].widget.choices = book.objects.values_list('
id', '
name')
name =fields.charfield(
max_length=32,
strip=true,
required=true,
error_message=,
widget=widgets.textinput(),
label='姓名'
, label_suffix=':'
, )
book =fields.charfield(
label='書名'
, widget=widgets.select()
)author =modelchoicefield(
queryset=book.objects.all(), #
返回的是 model物件的 __str__值
to_field_name='
author
', #
下拉選的 value值
empty_label='
--請選擇---',
required=true,
widget=widgets.select(),
label='作者'
)
"""雙重驗證
"""email =fields.combofield(
fields=[
fields.charfield(max_length=32, ), #
驗證長度
fields.emailfield() #
驗證格式
], required=true,
error_message=,
)"""自帶正規表示式驗證
"""phone =fields.charfield(
widget=widgets.select(),
validators=[regexvalidator(r'
^[1-9]+$
', '
請輸入數字
', code='
invalid1'),
regexvalidator(r
'^158[1-9]+$
', '
必須以159開頭
', code='
invalid2
')],
label='
**號碼',
label_suffix=':'
, error_messages=
)"""對 name 進行二次判斷
"""def
clean_name(self):
val = self.cleaned_data['
name']
if val == '
射鵰英雄傳':
raise validationerror('
%s已經存在!
' %val)
return
val
"""整體驗證
"""def
clean(self):
data =self.cleaned_data
name = data['
name']
author = data['
author']
if name == '
射鵰英雄傳
'and author == '
jack':
raise validationerror('
name不能是射鵰英雄傳 author不能是jack!')
return data
封裝Vue Element的form表單元件
在上述示例中,currenttabcomponent可以包括 就醬,對它的介紹完了。接下來就是封裝的具體實現,照例先來張效果圖 1 封裝的form表單元件form.vue 重置 查詢在封裝的時候發現乙個問題,就是有時候可能一行展示兩列表單,有時候呢可能一行又要展示三列或四列表單,這樣的話,也是需要在...
(表單 表單的元素 表單的屬性)
表單 標籤名 1 form 表單 action 路徑 method 提交方式 2 method 提交方式 get提交 在路徑後面加引數 顯示的是 name 123 age 123 注意 鍵中不要加空格,加空格後所顯示的就不是想要的數值了 name 123 age 123 name 123 age 1...
寬度 表單 Form表單
塊級元素和行內元素 1.塊級元素獨佔一行,行內元素在同一行顯示 2.塊級元素預設寬度為100 行內元素由內容撐開 3.塊級元素可以設定寬高,行內元素不可以設定寬高 4.塊級元素可以設定margin和padding和四個方向,行內元素只可以設定margin和padding和左右值,上下不起作用 5.塊...