我试过没有数据库我的应用程序工作得很好,但是用peewee和postgres,它根本无法创建表格。peewee和postgres在heroku上,无法创建表格
我尝试了不同的方法,在网上发布,但如果你已经使用peewee在Heroku请帮助它不工作,任何人。
我model.py
if os.environ.get('DATABASE_URL'):
DATABASE_URL = os.environ.get('DATABASE_URL')
db = urlparse(DATABASE_URL)
user = db.username
password = db.password
path = db.path[1:]
host = db.hostname
port = db.port
database = PostgresqlDatabase(path, user=user, password=password, host=host, port=port)
else:
database = PostgresqlDatabase('heroku')
class BaseModel(Model):
class Meta:
database = database
class User(BaseModel):
name = CharField()
email = CharField(null=False, unique=True)
移动从if语句迎接创建功能表创建表之后。
@app.route('/')
def welcome():
call('printenv')
a = 'Default'
b = 'Default'
if os.environ.get('DATABASE_URL'):
a = os.environ.get('DATABASE_URL')
if os.environ.get('HEROKU'):
b = os.environ.get('HEROKU')
create_model_tables([Users], fail_silently=True)
Users.insert(name='John', email='Doe').execute()
return render_template('index.html', a=a, b=b)
if __name__ == '__main__':
app.run(port=5000, debug=True)
我已经改变了表名称仍然得到同样的错误。 –
LINE 1:INSERT INTO“users”(“name”,“email”)VALUES('John','Doe')... 2017-04-20T03:36:57.055897 + 00:00 app [web.1 ]:^ 2017-04-20T03:36:57.055896 + 00:00 app [web.1]:psycopg2.ProgrammingError:关系“users”不存在 –
那么你需要创建表格,很明显。 – coleifer