Django 设置 - 从管理员自定义每个站点的属性
Django settings - customize attributes per Site from admin
我正在使用 django 站点框架。
我有一个带有 OneToOneField 到站点模型的模型。这样管理员用户可以从管理面板自定义每个站点属性。
class CustomSite(models.Model):
site = models.OneToOneField(Site)
email_host_user = models.EmailField()
...
其中一些字段实际上是应该在设置文件中使用的值,例如 EMAIL_HOST_USER。
如何在自定义站点的设置文件中使用这些值?这是正确的做法吗?
找到解决方案:
使用此模型将设置保存在数据库中。然后我创建一个自定义电子邮件后端,我可以通过 'connection' 参数将其传递给 EmailMultiAlternatives()。
这样我就不需要在任何设置文件中存储电子邮件设置了。
我正在使用 django 站点框架。
我有一个带有 OneToOneField 到站点模型的模型。这样管理员用户可以从管理面板自定义每个站点属性。
class CustomSite(models.Model):
site = models.OneToOneField(Site)
email_host_user = models.EmailField()
...
其中一些字段实际上是应该在设置文件中使用的值,例如 EMAIL_HOST_USER。
如何在自定义站点的设置文件中使用这些值?这是正确的做法吗?
找到解决方案:
使用此模型将设置保存在数据库中。然后我创建一个自定义电子邮件后端,我可以通过 'connection' 参数将其传递给 EmailMultiAlternatives()。
这样我就不需要在任何设置文件中存储电子邮件设置了。