widgets: add check on field_id parameter for select2.json urls (#88250) #281

Merged
yweber merged 1 commits from wip/88250-select2-json-bugfix into main 2024-03-20 09:28:08 +01:00
Owner
No description provided.
yweber added 1 commit 2024-03-18 18:26:17 +01:00
yweber changed title from WIP: widgets: add check on field_id parameter for select2.json urls (#88250) to widgets: add check on field_id parameter for select2.json urls (#88250) 2024-03-18 18:33:58 +01:00
vdeniaud requested changes 2024-03-19 10:04:34 +01:00
Dismissed
@ -773,2 +773,4 @@
field_id = self.kwargs.get('field_id', self.request.GET.get('field_id', None))
if not field_id:
raise BadRequest('Invalid ID')
Owner

L'exception à lever est plutôt HttpResponseBadRequest (c'est sûrement équivalent mais mieux vaut faire comme d'habitude)

L'exception à lever est plutôt HttpResponseBadRequest (c'est sûrement équivalent mais mieux vaut faire comme d'habitude)
Author
Owner

A priori HttpResponseBadRequest n'est pas une classe d'exception (et ne peut pas être raise).

J'imagine que lever BadRequest renvoie une instance de HttpResponseBadRequest.

Comme on est dans une méthode qui renvoie une Response je peux renvoyer une instance de HttpResponseBadRequest, mais je trouvais ça plus clair/cohérent de raise entre les raise Http404 : dis moi ce que tu en penses.

A priori `HttpResponseBadRequest` n'est pas une classe d'exception (et ne peut pas être raise). J'imagine que lever `BadRequest` renvoie une instance de `HttpResponseBadRequest`. Comme on est dans une méthode qui renvoie une `Response` je peux renvoyer une instance de `HttpResponseBadRequest`, mais je trouvais ça plus clair/cohérent de raise entre les raise `Http404` : dis moi ce que tu en penses.
Owner

OK je viens de voir « New in Django 3.2. », pour ça qu'il y en a nulle part : let's go vivre avec son temps !

OK je viens de voir « New in Django 3.2. », pour ça qu'il y en a nulle part : let's go vivre avec son temps !
yweber marked this conversation as resolved
@ -739,1 +740,4 @@
assert passive_login(req, next_url='/', login_hint={'pop'}) == 'response1'
def test_select2_all(app, superuser):
Owner

Ce test devrait aller dans test_manager.py

Ce test devrait aller dans test_manager.py
Author
Owner

Merci ! J'ai eu du mal à trouver ou les caser et je n'étais pas super satisfait !

Merci ! J'ai eu du mal à trouver ou les caser et je n'étais pas super satisfait !
yweber marked this conversation as resolved
@ -740,0 +746,4 @@
assert response.status_code == 400
def test_select2_role(app, superuser, simple_user, settings):
Owner

Ce test devrait aller dans test_role_manager.py (potentiellement à côté des tests de la même vue)

Ce test devrait aller dans test_role_manager.py (potentiellement à côté des tests de la même vue)
Author
Owner

idem !

idem !
yweber marked this conversation as resolved
yweber force-pushed wip/88250-select2-json-bugfix from 75b74f400a to 5b058ebf68 2024-03-19 10:25:50 +01:00 Compare
yweber requested review from vdeniaud 2024-03-19 10:29:50 +01:00
vdeniaud approved these changes 2024-03-19 10:44:52 +01:00
Dismissed
yweber force-pushed wip/88250-select2-json-bugfix from 5b058ebf68 to 0334e56117 2024-03-20 09:21:08 +01:00 Compare
vdeniaud approved these changes 2024-03-20 09:26:27 +01:00
yweber merged commit 0334e56117 into main 2024-03-20 09:28:08 +01:00
yweber deleted branch wip/88250-select2-json-bugfix 2024-03-20 09:28:08 +01:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: entrouvert/authentic#281
No description provided.