graphql-python / graphql-python/graphene
Null Boolean Scalar
- Ngôn ngữ chính
- Python
- Star
- 8.2k
- Fork
- 818
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
Im always frustrated when my model has a null able boolean field and the method `from graphene_django.types import construct_fields` returns a Boolean Scalar field which can only be True or False but not None
Some fields should not have a default for this types of boolean fields.
perhaps a scalar like this?
class NullBoolean(Scalar):
'''NullBoolean Scalar Description'''
@staticmethod
def serialize(dt):
return dt
@staticmethod
def parse_literal(node):
if isinstance(node, ast.StringValue):
if node.value == 'Yes':
return True
if node.value == 'No':
return False
return None
@staticmethod
def parse_value(value):
return value
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Bắt đầu tại construct_fields trong graphene_django.types và theo dõi cách các giá trị boolean nullable của model được ánh xạ. Xác nhận hành vi đầu vào và đầu ra GraphQL dự kiến đối với None, True và False, sau đó thêm phạm vi kiểm thử hồi quy tập trung. Hoàn thành khi các trường boolean nullable giữ nguyên None mà không thay đổi hành vi của các trường boolean non-null.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- python
- Lĩnh vực
- api
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 35/100