[英]How and where to call a method in a Class based view Django
作为新闻年决议的一部分,我向自己承诺,我将学习编写基于类的视图,但事实证明,我需要一些帮助。
我想要做的是调用一个生成随机数的方法,然后在页面加载之前发送一封电子邮件,我很乐意这样做(我可能会使用芹菜在后台发送邮件)。
我不明白的是如何以及在哪里调用方法 random_code() 和 send_email() (见下文)?
我是否通过覆盖 setup()、dispatch() 或 get() 等来做到这一点?
有人可以给我一个基本的例子吗?
该类将如下所示:
class VerifyCode(FormView):
template_name = "account/verify.html"
form_class = VerifyForm
def random_code(self):
#random_code generator
return random_code
def send_email(self):
#code to send email
这取决于您要调用哪个 REST 方法。 如果您使用的是简单的
GET<\/code> ,则在
get()<\/code>中调用它,如下所示:
class VerifyCode(FormView):
template_name = "account/verify.html"
form_class = VerifyForm
def random_code(self):
#random_code generator
return random_code
def send_email(self):
#code to send email
def get(self, request, *args, **kwargs):
...
self.random_code()
self.send_email()
return super().get(request, *args, **kwargs)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.