发送电子邮件并向django管理员注册添加参数

时间:2013-10-13 12:19:32

标签: django django-models django-admin

我有两个问题。关于django的管理站点

  1. 如何在django中为auth_user模型添加额外字段。该字段必须出现在默认的管理员注册中。任何代码片段都会有所帮助。
  2. 2.我使用默认管理站点进行注册。如果我必须发送注册邮件该怎么办?我在settings.py中配置了发送邮件,

    "send_mail('This is a test Subject', 'This is a test Mail', 'x@x.com',
        ['y@y.com'], fail_silently=False)"
    

    以上代码成功发送邮件。 现在,当一个新用户注册时,这应该从数据库中获取邮件ID并使用他/她的用户名发送邮件。我怎么能这样做或任何提及这些东西应该是有帮助的。

    感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

要覆盖Django用户模型,请按照以下代码进行操作。

class Profile(models.Model):
    user = models.ForeignKey(User)
    nickname = models.CharField(max_length=255)
    address = models.TextField()

如果您想在成功注册django admin后发送电子邮件,您应该看看Django信号。

请参阅以下代码,它将帮助您发送电子邮件。

def send_email(sender, instance, created, **kwargs):
    #fetch email id from db and email sending code will be here
    post_save.connect(send_email, sender=User)