2017-02-13 4 views
1

こんにちは私はPostgresのSQLAlchemyを使ってテーブルを作成しようとしていますが、それはすべてうまく処理されますが、テーブルは私のPostgresサーバには作成されません。Postgresを使用してSQLAlchemyでテーブルを作成する方法は?

マイmodels.pyファイル:

import sqlalchemy 
from sqlalchemy import Column, Integer, String 
from sqlalchemy import Table 
from sqlalchemy.ext.declarative import declarative_base 

Base = declarative_base() 

class MyTable(Base): 
    __tablename__ = 'myTable' 
    time_id = Column(String(), primary_key=True) 
    customer_id = Column(String()) 
    inventory_id = Column(String()) 

    def toJSON(self): 
     json = { 
      "time_id":self.alert_id, 
      "customer_id":self.customer_id, 
      "inventory_id":self.inventory_id, 
     } 
     return json 

マイクリエータファイル:

from sqlalchemy.ext.declarative import declarative_base 
from models import MyTable 
from sqlalchemy import create_engine 

path="postgresql://postgres:[email protected]/test" 
engine = create_engine(path, echo=True) 
Base = declarative_base() 
Base.metadata.create_all(engine) 

私が間違っているのか?

答えて

3

Baseクラスは、継承のために使用さBaseクラスを使用するので、あなたのBaseは、モデルファイルからインポートする必要があり、ファイルの両方のために異なっている:

#creatorfile 
... 
from models import Base 

path="postgresql://postgres:[email protected]/test" 
engine = create_engine(path, echo=True) 
Base.metadata.create_all(engine) 

Base = declarative_base()

この行を削除します
関連する問題