[Backend] Escrever DB_service que remove list saves depois de uma troca de privacidade

オープン
#77 コメント 0 件 リアクション 0 件 担当者 1 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@enzodisanto-dev がすでに取り組んでいます。

2026年10月30日 から。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
55/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
fastapi, python

調査の方向性

Start with backend/src/services/db_services/list/saves.py and inspect DB_delete_saves_after_privacy_change, then read the list edit route in backend/src/routes/list.py to understand how privacy levels are checked. Add unit tests in backend/tests/test_lists/test_edit_list.py for which saves should be removed at each privacy level; done means users without permission no longer have saves recorded for that list.

索引モデルが issue の本文から書いたものです。

説明

good first issue
  1. No arquivo backend/src/services/db_services/list/saves.py, reescreva a função DB_delete_saves_after_privacy_change (reecrever porque ela foi inicialmente escrita para quando privacidade era apenas um booleno, e não um número) para remover todos os saves que usuários X deram nas listas do usuário A, de acordo com o novo nível de privacidade da lista. Todo usuário X que não tiver mais permissão para salvar a lista não podem mais estar registrados na tabela ListSaves para aquela lista.

  2. No arquivo backend/src/routes/list.py, chame a função que você escreveu na rota de editar lista (@list_router.put("/{list_id}")) aṕos verificar se a nova privacidade é maior do que privacidade antiga da lista (acho que essa verificação já está feita).

  3. Teste, usando aquela página de documentação da fastapi, para ver se está dando certo.

-- Dê commit aqui, e abra uma PR para avaliação.

  1. No arquivo backend/tests/test_lists/test_edit_list.py, escreva testes unitários que testem se a sua função está operando como esperado.

-- Outro commit aqui na mesma PR para avaliação

主要言語
JavaScript
スター
1
フォーク
0
平均マージ
17時間 39分
マージ済み PR(30日)
4

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

USPCodeLabSanca/Gamerboxd のほかの issue

USPCodeLabSanca/Gamerboxd の issue をすべて見る

似ている issue

JavaScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。