我有一个带有postgresql db的烧瓶应用程序所以步骤是:
1.gunicorn
2.Procfile
3.heroku login
4.heroku apps:create flask-lili
5.heroku addons:add heroku-postgresql:dev
6.heroku pg:promote HEROKU_POSTGRESQL_ORANGE_URL
7.sudo pip install psycopg2
8.pip freeze> requirements.txt
10.git add .
11.git commit -m "create requirements.txt"
12.git push origin master
13.git push heroku master
14.heroku open
运行命令git push heroku master时没有出错,但不确定我应该使用命令编号5和6还是不
Procfile:
web: gunicorn manage:app
init: python manage.py db init
upgrade: python manage.py db upgrade
migrate: python manage.py db migrate
config.py:
class Config(object):
DEBUG = False
SECRET_KEY = 'Thisismysecretkey'
SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL',
'postgresql+psycopg2://peg:1234@localhost/app')
print SQLALCHEMY_DATABASE_URI
class TestingConfig(Config):
DEBUG = True
TESTING = True
PRESERVE_CONTEXT_ON_EXCEPTION = False
SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL',
'postgresql+psycopg2://peg:1234@localhost/testapp')
print SQLALCHEMY_DATABASE_URI
class DevelopmentConfig(Config):
DEBUG = True
class ProductionConfig(Config):
DEBUG = False
config = {
'development': DevelopmentConfig,
'testing': TestingConfig,
'production': ProductionConfig,
'default': DevelopmentConfig}
错误:
An error occurred in the application and your page could not be served. Please try again in a few moments.
If you are the application owner, check your logs for details.
Thanx,如果你可以帮助我 现在我运行命令heroku logs --tail:
2015-03-09T12:17:29.670249+00:00 heroku[api]: Enable Logplex by peg@gmail.com
2015-03-09T12:17:29.670286+00:00 heroku[api]: Release v2 created by peg1@gmail.com
2015-03-09T12:21:36.990904+00:00 heroku[web.1]: Starting process with command `gunicorn manage:app`
2015-03-09T12:21:38.880134+00:00 app[web.1]: bash: gunicorn: command not found
即使我的要求中有枪支
如果我跑" heroku运行init"会收到错误:
File "manage.py", line 3, in <module>
from flask.ext.migrate import Migrate, MigrateCommand
ImportError: No module named flask.ext.migrate
我可以在本地运行应用程序而没有错误,我在requirements.txt
中进行了flask-migrate答案 0 :(得分:2)
flask.ext已过时
将flask.ext.migrate更改为flask_migrate,因此代码行按
from flask_migrate import Migrate, MigrateCommand
代替
from flask.ext.migrate import Migrate, MigrateCommand
请参阅此文档
烧瓶迁移
https://flask-migrate.readthedocs.io/en/latest/
答案 1 :(得分:0)
尝试从
更改flask.ext.migrate import Migrate, MigrateCommand
要
flask_Migrate import Migrate, MigrateCommand