2012-08-14 60 views
3

我正在使用sqlalchemy和wtforms构建龙卷风应用程序。我有两个模特委员会和成员有多对多的关系。我无法使用sqlalchemy模型填充表单。如何填充WTForms和SQLAlchemy的多对多关系?

我的模型看起来像这样

class Committee(Base): 
    __tablename__ = 'committee' 

    id_ = Column(Integer, primary_key=True) 
    name = Column(String) 

class Member(Base): 
    __tablename__ = 'member' 

    id_ = Column(Integer, primary_key=True) 
    name = Column(String) 
    phone = Column(String) 
    committee = relationship("Committee", 
        secondary=member_committee_table, 
        backref="members") 

#query wrapper used in wtforms 
def get_members(): 
    #return m.Session.query(Member).all() 
    return m.Session.query(Member) 

class CommitteeForm(BaseForm): 
    name = TextField('name', validators=[Required()]) 
    members = QuerySelectMultipleField(query_factory=get_members()) 

这给了我错误告诉“查询”对象是不可调用的

回答

4

摆脱的“()”。 它需要一种方法工厂

members = QuerySelectMultipleField(query_factory=get_members) 
+0

它的工作是完美的.. – 2012-10-22 06:40:16