كيفية إنشاء جدول محدد في مخطط sqlalchemy في خادم Heroku؟
-
21-12-2019 - |
سؤال
لدي تطبيق بسيط جدًا أقوم بإنشائه باستخدام Python وSQLAlchemy وPostgreSQL وTurbogears 2.3.
يعمل التطبيق على جهازي المحلي، حيث أستخدم SQLite.ومع ذلك، عندما أقوم بتحميله إلى Heroku، لا أعرف كيفية إنشاء جداول PostgreSQL هناك التي يستخدمها TurboGears2 للمصادقة والتحقق من الصحة:الجداول مثل المستخدم، Gruoups، الأذونات.
أرى أن المخطط محدد في ملف يسمى 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'
المحلول
ليس لدي أي خبرة مع المحركات التوربينية، ولكن من خلال قراءة الوثائق لديك خياران.
الخلق المباشر:
http://turbogears.readthedocs.org/en/latest/turbogears/gearbox.html#setup-app
كتابة الهجرات الخاصة بك:
http://turbogears.readthedocs.org/en/latest/turbogears/migrations.html