我正在遵循Heroku的教程来部署Django应用程序:http://devcenter.heroku.com/articles/django#prerequisites.
一切正常,直到我到达这一部分:
$ pip install Django psycopg2
Run Code Online (Sandbox Code Playgroud)
我可以自己安装Django,但问题是psycopg2.
我一直收到这个错误:
ld: library not found for -lpq
collect2: ld returned 1 exit status
ld: library not found for -lpq
collect2: ld returned 1 exit status
lipo: can't open input file: /var/folders/_4/p6l0y0t51hd4xbq7llbyshmw0000gn/T//cc0L10mI.out (No such file or directory)
error: command 'gcc-4.2' failed with exit status 1
Run Code Online (Sandbox Code Playgroud)
我在我的机器上安装了PostgreSQL 9.1.
另外,在输出中,有这样的一堆行:
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -g -O2 -DNDEBUG -g -O3 -DPSYCOPG_DEFAULT_PYDATETIME=1 -DPSYCOPG_VERSION="2.4.4 (dt dec pq3 ext)" …
Run Code Online (Sandbox Code Playgroud) 我正在Heroku上部署一个Django应用程序,并在用户在网站上注册时使用Sendgrid插件发送验证电子邮件.
我按照这里的说明将以下内容粘贴到settings.py
:
EMAIL_HOST = 'smtp.sendgrid.net'
EMAIL_HOST_USER = 'sendgrid_username'
EMAIL_HOST_PASSWORD = 'sendgrid_password'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
Run Code Online (Sandbox Code Playgroud)
但是,我的应用程序在注册后崩溃了.
究竟我应该放什么的EMAIL_HOST_USER
和EMAIL_HOST_PASSWORD
?
在heroku的sendgrid插件中的开发人员选项卡下,它为我提供了用户名app*******@heroku.com
,而对于密码,它只是显示"您的密码".密码是我的Heroku密码吗?
另外,我需要包含DEFAULT_FROM_EMAIL
在我的settings.py
文件中吗?我在哪里告诉Sendgrid它是什么?
编辑:我已经设置DEBUG = True
,看起来错误是:
SMTPSenderRefused
(550, 'Cannot receive from specified address <info@myapp.com>: Unauthenticated senders not allowed', 'info@myapp.com')
Run Code Online (Sandbox Code Playgroud)
在Sendgrid做其事之前,看起来问题正在发生.我是否需要以某种方式使用Heroku验证电子邮件地址?