storage.py 文件源码

python
阅读 28 收藏 0 点赞 0 评论 0

项目:snovault 作者: ENCODE-DCC 项目源码 文件源码
def _update_rels(self, model, links):
        session = self.DBSession()
        source = model.rid

        rels = {(k, uuid.UUID(target)) for k, targets in links.items() for target in targets}

        existing = {
            (link.rel, link.target_rid)
            for link in model.rels
        }

        to_remove = existing - rels
        to_add = rels - existing

        for rel, target in to_remove:
            link = session.query(Link).get((source, rel, target))
            session.delete(link)

        for rel, target in to_add:
            link = Link(source_rid=source, rel=rel, target_rid=target)
            session.add(link)

        return to_add, to_remove
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号