python - Flask-sqlalchemy 一对多存储问题
巴扎黑
巴扎黑 2017-04-17 11:37:09
0
1
329
class Parent(B):
    __tablename__ = 'parent'
    id = (Integer, primary_key=True)
    childrens = ("Child")

class Child(B):
    __tablename__ = 'child'
    id = (Integer, primary_key=True)
    parent_id = (Integer, ForeignKey('parent.id'))

   def save(self, parent):
       parent.childrens.append(self)
       db.session.add(parent)
       db.session.add(self)
       db.session.commit()

使用save方法后,调用 parent.childrens.all() 为空 表明未存储到数据库..why?

人肉调试一小时后..发现某个细节出错了..现在已经搞定了

巴扎黑
巴扎黑

全部回复(1)
小葫芦

这里其实 db.session.add(parent) 然后 commit,child 和 parent 就都进去了。 看你的代码,应该还是原生的 sqlalchemy,而且没有配置 backref 不知道是不是这里的问题。

写了个例子,你可以参考下。

https://gitcafe.com/greatghoul/sqlalchemy-samples

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!