Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document with filefield #30

Merged
merged 17 commits into from
Dec 22, 2023
Merged

Document with filefield #30

merged 17 commits into from
Dec 22, 2023

Conversation

rufener
Copy link
Collaborator

@rufener rufener commented Dec 20, 2023

Ce PR redéfinit le modèle Document
Les objets document sont poussés juste après avoir enregistré l'objet item.
⚠️ La suppression de documents se fait "on the fly", sans avoir besoin d'enregistrer l'item. Le message d'alerte avant d'effacer le document est spécifique au document en question (affiche le filename).

@rufener rufener marked this pull request as draft December 20, 2023 16:10
Copy link
Member

@maltaesousa maltaesousa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've reviewed backend, I'll let @mparkan review the front part :)

back/ne_sop_backend/ne_sop_api/views.py Outdated Show resolved Hide resolved
@rufener
Copy link
Collaborator Author

rufener commented Dec 21, 2023

⚠️ Le chemin d'enregistrement des fichiers est PurePath(str(item.created.year), item.number, file.name). Le problème est que le champ item.number est un champs modifiable dans le formulaire. Est-ce qu'on rend ce champ immuable ou est-ce qu'on prend l'identifiant de l'item (item.id) pour remédier à un changement de dossier qui briserait les liens vers les documents ?

L'avantage de item.number est qu'il est très facile à retrouver la logique de quel OP on parle, si d'aventure un jour on devait aller sur le serveur pour une raison X ou Y.

L'avantage de item.id est qu'il est immuable.

@rufener
Copy link
Collaborator Author

rufener commented Dec 21, 2023

⚠️ Le chemin d'enregistrement des fichiers est PurePath(str(item.created.year), item.number, file.name). Le problème est que le champ item.number est un champs modifiable dans le formulaire. Est-ce qu'on rend ce champ immuable ou est-ce qu'on prend l'identifiant de l'item (item.id) pour remédier à un changement de dossier qui briserait les liens vers les documents ?

L'avantage de item.number est qu'il est très facile à retrouver la logique de quel OP on parle, si d'aventure un jour on devait aller sur le serveur pour une raison X ou Y.

L'avantage de item.id est qu'il est immuable.

Je passe sur l'id parce que le champ number n'a pas de contrainte sur les signes autorisés. Il pourrait y avoir des conflits avec les caractères dans le path.

@rufener rufener closed this Dec 21, 2023
@rufener rufener reopened this Dec 21, 2023
@maltaesousa
Copy link
Member

Ah ok, pour les prochaines draft, ajoute les reviewers seulement quand la PR est prête :) je pensais que tu voulais la review maintenant

@rufener
Copy link
Collaborator Author

rufener commented Dec 21, 2023

Ah ok, pour les prochaines draft, ajoute les reviewers seulement quand la PR est prête :) je pensais que tu voulais la review maintenant

Hmmm curieux, je n'ai pas souvenir avoir déjà enregistré les reviewers... Bref, je vous ferai signe quand le PR est prêt 😉

@rufener rufener marked this pull request as ready for review December 21, 2023 16:30
back/ne_sop_backend/ne_sop_api/serializers.py Show resolved Hide resolved
back/ne_sop_backend/ne_sop_api/utils.py Show resolved Hide resolved
back/ne_sop_backend/ne_sop_api/utils.py Show resolved Hide resolved
back/ne_sop_backend/ne_sop_api/views.py Outdated Show resolved Hide resolved
back/ne_sop_backend/ne_sop_api/views.py Show resolved Hide resolved
front/src/views/NewDocumentDialog.vue Show resolved Hide resolved
Copy link
Contributor

@mparkan mparkan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM (Still have to check issue with uploaded documents only appearing after a page refresh)

@rufener rufener merged commit 4d06423 into sitn:main Dec 22, 2023
@rufener rufener deleted the document2 branch December 22, 2023 14:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants