Как удалить данные таблицы ассоциации в отношении многие ко многим в Flask - PullRequest
0 голосов
/ 25 марта 2020

Я пытаюсь удалить данные таблицы, связанной с таблицей ассоциации. Но всякий раз, когда я пытаюсь удалить данные, к сожалению, они не удаляются. Вот модели:

шоу (модель)

Shows = db.Table('shows',
             db.Column('venue_id', db.Integer, db.ForeignKey('venue.id'), primary_key=False, nullable=False),
             db.Column('artist_id', db.Integer, db.ForeignKey('artist.id'), primary_key=False, nullable=False),
             db.Column('Date', db.DateTime, nullable=False),
             db.Column('venue_name', db.String()),
             db.Column('artist_name', db.String()),
             db.Column('artist_image_link', db.String()),
             db.Column('venue_image_link', db.String())
             )

Место проведения (модель)

class Venue(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String)
genres = db.Column(PickleType)
city = db.Column(db.String(120))
state = db.Column(db.String(120))
address = db.Column(db.String(120))
phone = db.Column(db.String(120))
seeking_talent = db.Column(db.Boolean, default=False)
seeking_description = db.Column(db.Text())
image_link = db.Column(db.String(500))
website = db.Column(db.String())
facebook_link = db.Column(db.String(120))
artists = db.relationship('Artist', secondary=Shows, cascade="all, delete",
                          backref=db.backref('venues', lazy=True))

def __repr__(self):
    return f'<Venue ID: {self.id}, name: {self.name}>'

Исполнитель (модель)

class Artist(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String())
genres = db.Column(PickleType)
city = db.Column(db.String(120))
state = db.Column(db.String(120))
phone = db.Column(db.String(120))
seeking_venue = db.Column(db.Boolean, default=False)
seeking_description = db.Column(db.Text())
image_link = db.Column(db.String(500))
website = db.Column(db.String())
facebook_link = db.Column(db.String(120))

Всякий раз, когда я пытаюсь создать объект Venue и пытаюсь удалить его, не связывая его с таблицей ассоциации (показывает), данные удаляются. Но когда я связываю объект объекта с таблицей ассоциации (показывает) и пытаюсь удалить объект, объект не удаляется.

Любая помощь будет высоко оценена, спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...