介绍
今天就跟大家聊聊有关小部件怎么在django表单中使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
<强>一、指定使用的小部件强>
每个字段都有一个默认的小部件类型。如果你想要使用一个不同的小部件,可以在定义字段时使用部件参数。像这样:
得到django import 形式 class CommentForm (forms.Form): 时间=name 才能;forms.CharField () 时间=url 才能;forms.URLField () comment 才能=,forms.CharField(小部件=forms.Textarea)
这将使用一个文本区域小部件来展现表单的评论字段,而不是默认的TextInput部件。
<强>二,设置部件的参数强>
许多部件具有可选的额外参数,下面的示例中,设置了SelectDateWidget的年属性,注意参数的传递方法:
得到django import 形式 BIRTH_YEAR_CHOICES =, (& # 39; 1980 & # 39;, & # 39; 1981 & # 39;,, & # 39; 1982 & # 39;) FAVORITE_COLORS_CHOICES =, ( ,,(& # 39;蓝# 39;,,& # 39;蓝# 39;), ,,(& # 39;绿色# 39;,,& # 39;绿色# 39;), ,,(& # 39;黑色# 39;,,& # 39;黑色# 39;), ) class SimpleForm (forms.Form): 时间=birth_year 才能;forms.DateField(小部件=forms.SelectDateWidget=BIRTH_YEAR_CHOICES)(年) 时间=favorite_colors 才能;forms.MultipleChoiceField ( ,,,=False, ,,,小部件=forms.CheckboxSelectMultiple, 选择,,,=FAVORITE_COLORS_CHOICES, )才能
<强>三,为小部件添加CSS样式强>
默认情况下,当Django渲染小部件为实际的HTML代码时,不会帮你添加任何的CSS样式,也就是说网页上所有的TextInput元素的外观是一样的。
看下面的表单:
得到django import 形式 class CommentForm (forms.Form): 时间=name 才能;forms.CharField () 时间=url 才能;forms.URLField () comment 才能=,forms.CharField ()
这个表单包含三个默认的TextInput小部件,以默认的方式渲染,没有CSS类,没有额外的属性。每个部件的输入框将渲染得一模一样,丑陋又单调:
在祝辞祝辞,f =, CommentForm (auto_id=False) 在祝辞祝辞,f.as_table () & lt; tr> & lt; th>名称:& lt;/th> & lt; td> & lt; input 类型=皌ext", Name=皀ame", required /祝辞& lt;/td> & lt;/tr> & lt; tr> & lt; th> Url: & lt;/th> & lt; td> & lt; input 类型=皍rl", name=皍rl", required /祝辞& lt;/td> & lt;/tr> & lt; tr> & lt; th>评论:& lt;/th> & lt; td> & lt; input 类型=皌ext", name=癱omment", required /祝辞& lt;/td> & lt;/tr>
在真正的网页中,你可结束不想让每看个小部件上去都一样。可能想要给评论一个更大的输入框,可能想让的名字# 39;小部件具有一些特殊的CSS类。
可以在创建小部件时使用小部件。attrs参数来实现这一目的:
class CommentForm (forms.Form): name 才能=,forms.CharField(小部件=forms.TextInput (attrs={& # 39;类# 39;:,& # 39;特殊# 39;})) 时间=url 才能;forms.URLField () comment 才能=,forms.CharField(小部件=forms.TextInput (attrs={& # 39;大小# 39;:,& # 39;40 & # 39;}))
注意参数的传递方式!
这次渲染后的结果就不一样了:
在祝辞祝辞,f =, CommentForm (auto_id=False) 在祝辞祝辞,f.as_table () & lt; tr> & lt; th>名称:& lt;/th> & lt; td> & lt; input 类型=皌ext", Name=皀ame",类=皊pecial", required /祝辞& lt;/td> & lt;/tr> & lt; tr> & lt; th> Url: & lt;/th> & lt; td> & lt; input 类型=皍rl", name=皍rl", required /祝辞& lt;/td> & lt;/tr> & lt; tr> & lt; th>评论:& lt;/th> & lt; td> & lt; input 类型=皌ext", name=癱omment",大??0“,required /祝辞& lt;/td> & lt;/tr>
看完上述内容,你们对小部件怎么在django表单中使用有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。