如何在 django 中使用当前用户的邮件地址初始化电子邮件模型表单

Posted

技术标签:

【中文标题】如何在 django 中使用当前用户的邮件地址初始化电子邮件模型表单【英文标题】:How to user Email modelform should be initialised with current user's mail address in django 【发布时间】:2014-10-04 02:57:27 【问题描述】:

如何使用 from_email 地址初始化电子邮件表单,该地址是 django 中当前用户的电子邮件地址。我正在使用邮局应用程序并希望填充发件人电子邮件地址。初始值如何设置为:

def __init__(self,*args,**kwargs):
        self.base_fields['from_email'].initial = 'hi@s.com'
       super(EmailForm, self).__init__(*args, **kwargs)

但电子邮件 ID 应该是动态变化的。请求对象在 EmailAdmin 的 changelist_view 中可用,在 ModelForm 中不可用。

【问题讨论】:

【参考方案1】:

这看起来像一个类似的问题:How can I get the username of the logged-in user in Django?

对于您的情况,检索用户电子邮件地址,并将其在请求上下文中传递给模板。你不需要继承任何东西

def my_view(request):
    if request.user.is_authenticated():
        email = request.user.email

【讨论】:

***.com/users/469072/joel-goldstick 我在使用电子邮件模型的 django-postoffice 应用程序。我知道如何在视图中获取当前用户的邮件地址,但不知道表单初始化 我想要类似***.com/questions/8841502/how-to-use-the-request-in-Ia-modelform-in-django?answertab=oldest#tab-top

以上是关于如何在 django 中使用当前用户的邮件地址初始化电子邮件模型表单的主要内容,如果未能解决你的问题,请参考以下文章

带有信息的 Django HTML POST 删除按钮

Django Djoser:电子邮件地址重置

在 Django 中接受电子邮件地址作为用户名

如何在 GMAIL ADDONS 中获取当前用户的电子邮件 ID

我的 django 表单如何获取当前用户名和电子邮件并将它们提交到另一个数据库表中?

Django 发送邮件