我是Django的新手,想在下面的代码中得到澄清,我在views.py中看到了代码,想知道它是如何工作的。一般在视图中,我用变量调用我的hmtl THA
sfp = SimpleFormProcessing(
form_class=VolunteerSignupForm,
form_2_model=volunteersignupform_2_model,
form_template='signups/create_contact_form.dmpl',
email_template='signups/response_email.dmpl',
email_html_template='signups/response_email_html.dmpl',
email_subject='Vibha Volunteer Signup',
email_sender='volunteer@vibha.org',
redirect_url='/signups/thanks/',
do_captcha=True)
答案 0 :(得分:1)
我不知道SimpleFormProcessing
的目的,但每次看到
something(....)
我们很可能将一些参数传递给函数/类的构造函数。
在这种情况下,我的疯狂猜测是SimpleFormProcessing
只是一个包装器(无论是类还是函数,在这里都是无关紧要的),它处理所有的注册过程。
换句话说,它通常是一个包装函数或类(将其视为用户的API),它接受一堆参数,然后调度作业。
例如,假设它是一个函数。
def SimpleFormProcessing(*args, **kwargs):
form_class = kwargs.get('form_class', None)
...... # get all the parameters from kwargs (a dictionary) .....
# now let's do something
add_user_to_volunteer_list(form)
email_user(email_subject, email_sender....)
... and more ....
如果这是一个类(调用类构造函数),那么它可能会使用传入的参数赋值属性(成员属性)。因此可能会有一些类方法可以稍后调用。
#sfp is now a class object. We might have....
sfp.email_user()
sfp.get_sender()
and etc
当然,您需要找到SimpleFormProcessing
的内容并查看代码。我发现它不是Django的一部分。
它可能是一个拥有自定义管理器,中间件等的应用程序?例如,在Django中我们有
RequestContext(request, { 'foo': 'bar', })
和RequestContext是一个内置的Django类。