亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Flask一對多關系級聯刪除怎么實現

發布時間:2022-12-05 16:44:48 來源:億速云 閱讀:144 作者:iii 欄目:編程語言

本文小編為大家詳細介紹“Flask一對多關系級聯刪除怎么實現”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Flask一對多關系級聯刪除怎么實現”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

前言

一對多關系,當刪除主表數據的時候,關聯表數據一起刪除掉

一對多

模型設計

class Person(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(50))
    addresses = db.relationship('Address', backref='person', cascade="all,delete")


class Address(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    email = db.Column(db.String(50))
    person_id = db.Column(db.Integer, db.ForeignKey('person.id'))

主要是在 relationship 加一個cascade="all,delete" 屬性

其它關聯刪除方式

    ###  只刪除父級,子不影響
    # 1. addresses = db.relationship('Address', backref='person',  passive_deletes=True)

    ###  子級跟隨刪除
    # 2. addresses = db.relationship('Address', backref='person', cascade="all, delete-orphan")
    # 3. addresses = db.relationship('Address', backref='person', cascade="all, delete")

    ##  父級刪除,子級不刪除,外鍵更新為 null
    # 4. addresses = relationship("Address", backref = backref("child"))

新增與刪除

新增數據

        person = Person(name='yoyo')
        person.addresses = [
            Address(email='123@qq.com')
        ]
        db.session.add(person)
        db.session.commit()  # 提交

刪除Person 表數據,關聯表一并刪除

        p = Person.query.filter_by(name='yoyo').first()
        db.session.delete(p)
        db.session.commit()

讀到這里,這篇“Flask一對多關系級聯刪除怎么實現”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

岚皋县| 濮阳市| 清涧县| 高密市| 潮州市| 塔河县| 嘉义县| 仙桃市| 杭州市| 大竹县| 诸城市| 沙雅县| 巢湖市| 株洲县| 永寿县| 太仆寺旗| 攀枝花市| 馆陶县| 含山县| 平邑县| 建水县| 鲁甸县| 从江县| 神农架林区| 包头市| 河津市| 石景山区| 子洲县| 德庆县| 浦城县| 吉首市| 临海市| 吴忠市| 南乐县| 河北省| 名山县| 苗栗县| 昆山市| 德格县| 涞源县| 农安县|