1.作为学习django的一部分,我试图使用pre_save信号将邮件发送到电子邮件ID。
2.邮件应该发送到现场提到的电子邮件ID。我没有正确的方法来使用信号。我给的是models.py和views.py。
views.py
def addbook():
form = BookForm
if request.POST:
form = BookForm(request.POST)
if form.is_valid():
cd = form.cleaned_data
form.save()
return redirect('/index/')
return render_to_response('addbook.html',{ 'form':form },context_instance=RequestContext(request))
models.py
class Book(models.Model):
book_id=models.AutoField(primary_key=True,unique=True)
book_name=models.CharField(max_length=30)
author_name=models.CharField(max_length=30)
publisher_name=models.CharField(max_length=40)
email = models.EmailField()
bookref = models.CharField(max_length=10)
class Meta:
db_table = u'Book'
def __unicode__(self):
return "%d %s %s %s %s" % (self.book_id,self.book_name, self.author_name,self.publisher_name,self.email,self.bookref)
我的要求是,在提交图书详细信息时,电子邮件应自动发送到该字段中的ID。
关于这一点的一个例子将是很有帮助的。
由于
答案 0 :(得分:1)
在Book模型下,创建信号功能。
class Book(models.Model):
[..........]
def send_update(sender, instance, created, **kwargs):
if instance.author_name:
message = "Book is updated"
subject = "Updates"
send_mail(subject, message, your_email,
[instance.email,])
post_save.connect(send_update, sender=Book)