@@ -47,7 +47,7 @@ def description(self):
47
47
return named_choices_descriptions [self .name ]
48
48
49
49
enum = Enum (name , list (named_choices ), type = EnumWithDescriptionsType )
50
- return enum (description = field .help_text )
50
+ return enum (description = field .help_text , required = not field . null )
51
51
return convert_django_field (field , registry )
52
52
53
53
@@ -67,12 +67,12 @@ def convert_django_field(field, registry=None):
67
67
@convert_django_field .register (models .FileField )
68
68
@convert_django_field .register (UUIDField )
69
69
def convert_field_to_string (field , registry = None ):
70
- return String (description = field .help_text )
70
+ return String (description = field .help_text , required = not field . null )
71
71
72
72
73
73
@convert_django_field .register (models .AutoField )
74
74
def convert_field_to_id (field , registry = None ):
75
- return ID (description = field .help_text )
75
+ return ID (description = field .help_text , required = not field . null )
76
76
77
77
78
78
@convert_django_field .register (models .PositiveIntegerField )
@@ -81,7 +81,7 @@ def convert_field_to_id(field, registry=None):
81
81
@convert_django_field .register (models .BigIntegerField )
82
82
@convert_django_field .register (models .IntegerField )
83
83
def convert_field_to_int (field , registry = None ):
84
- return Int (description = field .help_text )
84
+ return Int (description = field .help_text , required = not field . null )
85
85
86
86
87
87
@convert_django_field .register (models .BooleanField )
@@ -91,18 +91,18 @@ def convert_field_to_boolean(field, registry=None):
91
91
92
92
@convert_django_field .register (models .NullBooleanField )
93
93
def convert_field_to_nullboolean (field , registry = None ):
94
- return Boolean (description = field .help_text )
94
+ return Boolean (description = field .help_text , required = not field . null )
95
95
96
96
97
97
@convert_django_field .register (models .DecimalField )
98
98
@convert_django_field .register (models .FloatField )
99
99
def convert_field_to_float (field , registry = None ):
100
- return Float (description = field .help_text )
100
+ return Float (description = field .help_text , required = not field . null )
101
101
102
102
103
103
@convert_django_field .register (models .DateField )
104
104
def convert_date_to_string (field , registry = None ):
105
- return DateTime (description = field .help_text )
105
+ return DateTime (description = field .help_text , required = not field . null )
106
106
107
107
108
108
@convert_django_field .register (models .OneToOneRel )
@@ -114,7 +114,7 @@ def dynamic_type():
114
114
if not _type :
115
115
return
116
116
117
- return Field (_type )
117
+ return Field (_type , required = not field . null )
118
118
119
119
return Dynamic (dynamic_type )
120
120
@@ -149,7 +149,7 @@ def dynamic_type():
149
149
return
150
150
151
151
if isinstance (field .field , models .OneToOneField ):
152
- return Field (_type )
152
+ return Field (_type , required = not field . field . null )
153
153
154
154
if is_node (_type ):
155
155
return get_connection_field (_type )
@@ -168,7 +168,7 @@ def dynamic_type():
168
168
if not _type :
169
169
return
170
170
171
- return Field (_type , description = field .help_text )
171
+ return Field (_type , description = field .help_text , required = not field . null )
172
172
173
173
return Dynamic (dynamic_type )
174
174
@@ -178,18 +178,18 @@ def convert_postgres_array_to_list(field, registry=None):
178
178
base_type = convert_django_field (field .base_field )
179
179
if not isinstance (base_type , (List , NonNull )):
180
180
base_type = type (base_type )
181
- return List (base_type , description = field .help_text )
181
+ return List (base_type , description = field .help_text , required = not field . null )
182
182
183
183
184
184
@convert_django_field .register (HStoreField )
185
185
@convert_django_field .register (JSONField )
186
186
def convert_posgres_field_to_string (field , registry = None ):
187
- return JSONString (description = field .help_text )
187
+ return JSONString (description = field .help_text , required = not field . null )
188
188
189
189
190
190
@convert_django_field .register (RangeField )
191
191
def convert_posgres_range_to_string (field , registry = None ):
192
192
inner_type = convert_django_field (field .base_field )
193
193
if not isinstance (inner_type , (List , NonNull )):
194
194
inner_type = type (inner_type )
195
- return List (inner_type , description = field .help_text )
195
+ return List (inner_type , description = field .help_text , required = not field . null )
0 commit comments