Function
create_collection
(
session: Session, user_id: uuid.UUID, name: str, cards: list[CardBase] | None = None
)
Source from the content-addressed store, hash-verified
| 48 | |
| 49 | |
| 50 | def create_collection( |
| 51 | session: Session, user_id: uuid.UUID, name: str, cards: list[CardBase] | None = None |
| 52 | ) -> Collection: |
| 53 | collection = Collection(name=name, user_id=user_id) |
| 54 | session.add(collection) |
| 55 | session.flush() |
| 56 | |
| 57 | if cards: |
| 58 | card_objs = [ |
| 59 | Card( |
| 60 | front=card.front, |
| 61 | back=card.back, |
| 62 | collection_id=collection.id, |
| 63 | ) |
| 64 | for card in cards |
| 65 | ] |
| 66 | session.add_all(card_objs) |
| 67 | session.commit() |
| 68 | session.refresh(collection) |
| 69 | return collection |
| 70 | |
| 71 | |
| 72 | def update_collection( |