小编Yue*_*e Y的帖子

Django通过smtp.gmail.com发送电子邮件的麻烦

我正在尝试配置Django的send_email,以便我可以向用户发送密码重置电子邮件.到目前为止,我没有运气让它上班.我已经设置了一个基本的Gmail帐户(没有Google App等),并且在我的Django settings.py中我有:

EMAIL_HOST      = 'smtp.gmail.com'
EMAIL_HOST_PASSWORD = 'my_password'
EMAIL_HOST_USER = 'my_account@gmail.com'
EMAIL_PORT      = 587
MAIL_USE_TLS   = True

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
DEFAULT_FROM_EMAIL  = 'admin@my-site.com'
Run Code Online (Sandbox Code Playgroud)

然后我尝试通过这样做来测试:

python manage.py shell
>>> from django.core.mail import send_mail
>>> send_mail('test', 'test', 'test@test.com', ['my-personal-email@gmail.com'])
Run Code Online (Sandbox Code Playgroud)

我收到错误信息

Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "C:\Program Files\Python27\lib\site-packages\django\core\mail\__init__.py
", line 62, in send_mail
    connection=connection).send()
  File "C:\Program Files\Python27\lib\site-packages\django\core\mail\message.py"
, line 255, in send
    return self.get_connection(fail_silently).send_messages([self])
  File "C:\Program Files\Python27\lib\site-packages\django\core\mail\backends\sm
tp.py", line 88, in send_messages
    new_conn_created = …
Run Code Online (Sandbox Code Playgroud)

python django smtp

9
推荐指数
4
解决办法
1万
查看次数

使用Bluehost电子邮件服务器的Django电子邮件配置

我是Bluehost和Django的新手,我正在尝试使用Django在我的Bluehost服务器上设置"通过电子邮件重置密码"功能.我在设置主机和端口号时尝试了不同的组合,但由于某种原因它从未起作用.所以这就是我所拥有的:(我目前只在我的本地计算机上工作.)

在我可以配置我的电子邮件帐户的Bluehost网站上,它列出:

手动设置

  • 邮件服务器用户名:admin + my_host.com
  • 传入邮件服务器:mail.my_host.com
  • 传入邮件服务器:(SSL)box664.bluehost.com
  • 发送邮件服务器:mail.my_host.com(服务器要求身份验证)端口26
  • 发送邮件服务器:(SSL)box664.bluehost.com(服务器要求身份验证)端口465
  • 支持的传入邮件协议:POP3,POP3S(SSL/TLS),IMAP,IMAPS(SSL/TLS)
  • 支持的传出邮件协议:SMTP,SMTPS(SSL/TLS)

在settings.py中,我将电子邮件配置为:(我将列出两个组合和相应的错误消息)

组合1

DEFAULT_FROM_EMAIL  = 'admin@my_host.com'
SERVER_EMAIL = 'admin@my_host.com'
EMAIL_USE_TLS   = False
EMAIL_HOST      = 'box664.bluehost.com'
EMAIL_HOST_PASSWORD = 'my_email_password'
EMAIL_HOST_USER = 'admin+my_host.com'
EMAIL_PORT      = 465
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
Run Code Online (Sandbox Code Playgroud)

错误消息:异常值:连接意外关闭

组合2

DEFAULT_FROM_EMAIL  = 'admin@my_host.com'
SERVER_EMAIL = 'admin@my_host.com'
EMAIL_USE_TLS   = True
EMAIL_HOST      = 'mail.my_host.com'
EMAIL_HOST_PASSWORD = 'my_email_password'
EMAIL_HOST_USER = 'admin+my_host.com'
EMAIL_PORT      = 26
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
Run Code Online (Sandbox Code Playgroud)

错误消息:异常值:(535,"身份验证数据不正确")


任何人都可以给我一些我做错的建议吗?任何帮助表示赞赏.

python email django ssl bluehost

5
推荐指数
1
解决办法
1392
查看次数

R: If 语句包含 is.null 作为 OR 连接的条件之一

我有一个mat初始化为NULL. 我有一个迭代过程,它只会在某些条件下填充垫子。在这个过程之后,我检查是否mat有超过一定数量的行,如果没有,做其他事情。

我正在寻找一种干净的方式来编写此条件,理想情况下,类似于is.null(mat) | nrow(mat) < n. 虽然如果is.null(mat)TRUE并且它们通过 OR 连接,整个语句应该是TRUE,但nrow(mat) < n会出错。

我可以通过将其重写为两个条件并将# do something代码复制到两个位置来解决这个问题,但是有没有更简洁的方法来做到这一点?

mat = NULL

for(i in 1:10){
  if(runif(1) > 0.8){
    mat = rbind(mat, c(1,2,3))
  } 
}

if(is.null(mat)){
  # do something...
} else if(nrow(mat) < 3){
  # do something...
}
Run Code Online (Sandbox Code Playgroud)

r logical-operators

1
推荐指数
1
解决办法
837
查看次数

标签 统计

django ×2

python ×2

bluehost ×1

email ×1

logical-operators ×1

r ×1

smtp ×1

ssl ×1