Django Form源码分析(1) (TextInput)

自定义视图函数test
widget = forms.TextInput(attrs={'class': "form-control"})
运行步骤
1. 初始化封装

设置默认值


封装结束
# widge.input_type = "text"
# widge.template_name = "django/forms/widgets/text.html"
# widge.attrs = attrs


返回的字典就是用来给template做渲染

widge.template_name = "django/forms/widgets/text.html"
context = {...}
renderer = get_default_renderer() =import_str("django.forms.renderers.DjangoTemplates") =
from django.forms.renderers import DjangoTemplates
再把DjangoTemplates实例化
_render返回的就是DjangoTemplates.render(
"django/forms/widgets/text.html", context = {...}
)




 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号