Как создать таблицу, определенную в схеме SQLALCHEMY на сервере Heroku?
-
21-12-2019 - |
Вопрос
У меня очень простое приложение, которое я строю с Python, SQLalchemy, PostgreSQL и Turbogears 2.3.
Приложение работает в моей локальной машине, где я использую SQLite.Однако, когда я загружаю его в Heroku, я не знаю, как создать там столы PostgreSQL, которые Turbogears2 использует для аутентификации и валидации: таблицы, такие как пользователь, GRUOUP, разрешения.
Я вижу, что схема определяется в файле под названием auth.py
, который выглядит так:
....
from sqlalchemy import Table, ForeignKey, Column
from sqlalchemy.types import Unicode, Integer, DateTime
from sqlalchemy.orm import relation, synonym
from example2.model import DeclarativeBase, metadata, DBSession
class User(DeclarativeBase):
__tablename__ = 'tg_user'
user_id = Column(Integer, autoincrement=True, primary_key=True)
user_name = Column(Unicode(16), unique=True, nullable=False)
email_address = Column(Unicode(255), unique=True, nullable=False)
display_name = Column(Unicode(255))
_password = Column('password', Unicode(128))
created = Column(DateTime, default=datetime.now)
def __repr__(self):
return '<User: name=%s, email=%s, display=%s>' % (
repr(self.user_name), repr(self.email_address), repr(self.display_name))
def __unicode__(self):
return self.display_name or self.user_name
...
.
Поэтому мой вопрос в том, как я могу создать эти таблицы автоматически на сервере Heroku?Какой коммуникация или скрипт я должен выполнить?
Редактировать: Благодаря ответу JPUB, я прочитал на документах, как это сделать из консоли:
$ gearbox setup-app -c production.ini
.
И делать это в Heroku, это должно быть:
$ heroku run 'gearbox setup-app -c production.ini'
. Решение
У меня нет опыта с Turbogears, но чтение через документацию у вас есть два варианта.
Прямое создание:
http://turbogears.readtheedocs.org/en/Последние / Turbogears / Gearbox.html # Setup-App
Написание собственных миграций:
http://turbogears.readtheedocs.org/ru/latest/turbogears/Migrations.html