您好,匿名用户
随意问技术百科期待您的加入

Flask-sqlalchemy 一对多存储问题

0 投票
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?

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

用户头像 提问 2014年 6月7日 @ Ziggs 上等兵 (345 威望)
分享到:

1个回答

0 投票
 
最佳答案

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

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

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

用户头像 回复 2014年 6月7日 @ Nami 列兵 (71 威望)
选中 2013年 9月7日 @Ziggs
提一个问题:

相关问题

0 投票
1 回复 49 阅读
0 投票
1 回复 37 阅读
0 投票
1 回复 46 阅读
0 投票
0 回复 21 阅读
用户头像 提问 2013年 11月15日 @ Twitch 上等兵 (260 威望)
0 投票
1 回复 57 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...