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

Impossible de remettre un champ de son profil à False #2632

Closed
pierre-24 opened this issue May 5, 2015 · 6 comments
Closed

Impossible de remettre un champ de son profil à False #2632

pierre-24 opened this issue May 5, 2015 · 6 comments
Labels
C-API Concerne une API du site S-BUG Corrige un problème
Milestone

Comments

@pierre-24
Copy link
Member

Quand on fait un PUT /api/membres/{pk} et qu'on passe shown_sign: False ou shown_email: False, la valeur reste à True. Preuve en est:

screenshot from 2015-05-04 22 33 11

À noter que si on balance n'importe quoi, on recoit bien l'erreur "ceci n'est pas un booléen", donc ça, c'est OK. Et j'ai essayé avec False, false et 0, rien à faire.

@pierre-24 pierre-24 added S-BUG Corrige un problème C-API Concerne une API du site labels May 5, 2015
@DevHugo
Copy link
Contributor

DevHugo commented May 5, 2015

Enfait, c'est pour tous les champs boolean: shown_sign, shown_email, hover_or_click, email_for_answer.

Ça vient d'ici : https://github.com/zestedesavoir/zds-site/blob/dev/zds/member/api/serializers.py#L167.

python validated_data.get('show_sign', instance.show_sign) or instance.show_sign
Pour cet exemple, validated_data.get('show_sign', instance.show_sign) renvoi False mais
instance.show_sign renvoi True. Comme c'est un operateur 'or', Vrai ou Faux renvoi toujours vrai.

@DevHugo
Copy link
Contributor

DevHugo commented May 5, 2015

Issue here: When a model has a default we simply set required=False on the serializer field, and allow the model instance to use it's default when setting the value. Because empty text and boolean fields are coerced to an empty value by the serializer field that doesn't work.
Source: encode/django-rest-framework#1101

Ce qui est totalement logique dans illogique.

@GerardPaligot
Copy link
Member

Merci à @DevHugo pour le fix et @pierre-24 pour la QA.

Ping notre CdP @Eskimon pour savoir si j'ai bien positionné la milestone.

@Eskimon
Copy link
Contributor

Eskimon commented May 8, 2015

Arf vu que les milestones ont mysteurieusement change de nom je dirais "oui parce qu'il y a que celle la..." @SpaceFox des choses a dire ?

@pierre-24
Copy link
Member Author

Moi c'est ce que je met depuis 2 semaines :-°

@SpaceFox
Copy link
Contributor

SpaceFox commented May 8, 2015

C'est bien ça : que mettre d'autre comme nom de version puisque le numéro de la prochaine est encore inconnu ?

@SpaceFox SpaceFox modified the milestones: Version 15.5.1, Version de développement May 26, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-API Concerne une API du site S-BUG Corrige un problème
Projects
None yet
Development

No branches or pull requests

5 participants