为了账号安全,请及时绑定邮箱和手机立即绑定

在 Django 中将用户数据解码为字符串

在 Django 中将用户数据解码为字符串

宝慕林4294392 2022-10-06 20:03:55
我在 Django 中有一个名为 Account 的模型class Account(AbstractBaseUser):    email = models.EmailField(verbose_name="email", max_length=60, unique=True)我正在尝试将电子邮件打印为 views.py 中的字符串。def fill_view(request):    # ... authentication ...    email = Account.objects.filter(email=user.email).first()    # ... setting up forms ....    can.drawString(10, 100, email)我收到以下错误: Exception Type: AttributeError at /fill/ Exception Value: 'Account' object has no attribute 'decode'将数据从models.py传输到views.py时,如何将电子邮件解码为Django中的字符串?我发现Reddit 上的这个帖子很有帮助,它让我相信这可能是 mySQL 的问题。
查看完整描述

2 回答

?
茅侃侃

TA贡献1842条经验 获得超22个赞

您对 MySQL 没有问题,您只是没有从 Account 对象访问电子邮件


account = Account.objects.filter(email=user.email).first()

can.drawString(10, 100, account.email)


查看完整回答
反对 回复 2022-10-06
?
慕雪6442864

TA贡献1812条经验 获得超5个赞

使用@property


@property

  def email_text(self):

     return mark_safe(u"%s") % (escape(self.email))

然后,您可以在任何保存在email. 所以你只需要做can.drawString(10, 100, email.email_text())


mark_safe 来自 django.utils.safestring,见这里


查看完整回答
反对 回复 2022-10-06
  • 2 回答
  • 0 关注
  • 140 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号