Usuwanie obiektu z kolekcji w SQLAlchemy

Przechowuję kilka danych patentowych w bazie danych MySQL i wchodzę w interakcję z nią za pośrednictwem SQLAlchemy. Mam kolekcję w klasie Patent, która reprezentuje listę cesjonariuszy (firmy, którym przyznano patent):

<code>assignees = relationship('Company', secondary=patent_company_table, backref='patents')
</code>

Przetwarzam niektóre obiekty przechowywane w bazie danych i dla obiektu patentowegop, Chcę usunąć jakiegoś cesjonariuszaa (obiekt firmy) zplista cesjonariuszy. Na podstawiehttp://docs.sqlalchemy.org/en/latest/orm/session.html#deleting-from-collections , wydaje się, że wołanies.delete(a) faktycznie usunie obiekt firmya. Chcę po prostu usunąć cesjonariuszaa z listy cesjonariuszy dlap (tj. usuń wiersz w tabeli nazwa_firmy patentowej), NIE usuwaj obiektu firmy, ponieważa może znajdować się na liście cesjonariuszy innego obiektu patentowego.

Próbowałem utworzyć nową listęnew_assignees obejmuje to tylko cesjonariuszy zp oprócza a następnie zadzwonił:

<code>p.assignees = new_assignees
s.add(p)
</code>

To niestety nie oznaczap tak brudne, więc zakładam, że nie wpłynie to na bazę danych.

Czy masz jakieś sugestie, jak usunąć obiekt z kolekcji, usuwając wiersz w tabeli nazwa_firmy patentowej, a nie usuwając obiekt z tabeli Firma?

Dziękuję Ci.

AKTUALIZACJA

Oto fragment kodu:

<code>assignees = patent.assignees
for assignee in assignees:
    if assignee in duplicate_company_to_default:
        patent.assignees.remove(assignee)
        default_company = duplicate_company_to_default[assignee]
        if default_company not in assignees:
            added_patent_count += 1
            patent.assignees.append(default_company)
</code>

Po zapętleniu wszystkich patentówadded_patent_count = 983672 ale nie ma żadnych obiektówsession.dirty(). Czy muszę dodać ręcznie do sesji po zmodyfikowaniu przezappend lubremove?

questionAnswers(2)

yourAnswerToTheQuestion