2015-04-12 41 views
0

是否有可能使flask-sqlalchemy模型中的__tablename__動態使用聲明性基本方法?動態__tablename__在flask-sqlalchemy模型中

通常將它設置爲這一個:

class User(Base): 
    __tablename__ = 'users' 
    id = Column(Integer, primary_key=True) 
    name = Column(String(50), unique=True) 
    email = Column(String(120), unique=True) 

    def __init__(self, name=None, email=None): 
     self.name = name 
     self.email = email 

    def __repr__(self): 
     return '<User %r>' % (self.name) 

我想通過一個參數來改變它,這樣我可以有每個用戶的表(也許在構造函數?)。

我在本指南中發現了其他一些方法 Approaches 但我想使用會話,因爲我已經在其他模型中使用它。

+1

的表實例第一個構造函數參數究竟爲什麼你需要_per用戶_表?這聽起來像一個破壞性的架構。 – tzaman

+0

我嘗試爲最多50個用戶構建一個小型平臺,每個用戶可以擁有自己的學習平臺(保存在臨時數據庫中) –

回答

0

我有一點解決方法,但它不是很好。

我正在使用元數據方法,如here中所述。

有了,我可以將表名作爲SQLAlchemy的