Параметр в запросе POST не отображается в kwargs

У меня есть собственный менеджер, который создает объект из запроса POST. Проблема заключается в том, что 2 многих параметра не передают никакой информации.

Вот метод (в кастомном менеджере)

class ConditionManager(models.Manager):
use_in_migrations = True
use_for_related_fields=True

def create_condition(self, *args, **kwargs):
    print(args)
    for i in kwargs:
        print i, kwargs[i]
    condition_obj = conditions.models.Condition(name=kwargs['name'], contagious=kwargs['contagious'], treatable=kwargs['treatable'], treatment=kwargs['treatment'], severeity=kwargs['severeity'], symptoms=kwargs['symptoms'], speciality=kwargs['speciality'])

    condition_obj.save()
    return condition_obj

Вот сериализатор

class ConditionSerializer(serializers.ModelSerializer):
  symptoms = SymptomSerializer(read_only=True, many=True)

  def create(self, validated_data):
attrs = validated_data
request = self.context['request']
return Condition.new.create_condition(**attrs)

 class Meta:
model = Condition
fields = ('id', 'treatment', 'name', 'contagious', 'treatable', 'treatment', 'severeity', 'symptoms')

Вот запрос POST

POST запрос

Вот лог

() поддается лечению Истинное имя Лечение эпилепсии 1 заразно Ложная серьезность 7 Внутренняя ошибка сервера: /condition /new/condition/ Traceback (последний вызов был последним): файл "/Library/Python/2.7/site-packages/django/core/handlers/exception.py", строка 39, во внутреннем файле ответа = get_response(запрос)"/Library/Python/2.7/site-packages/django/core/handlers/base.py", строка 187, в _get_response response = self.process_exception_by_middleware(e, запрос) Файл "/Library/Python/2.7/site-packages/django/core/handlers/base.py", строка 185, в _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/ Библиотека /Python/2.7/site-packages/django/views/decorators/csrf.py", строка 58, в файле wrapped_view возвращает view_func(*args, **kwargs) Файл"/Library/Python/2.7/site-packages/django/views/generic/base.py", строка 68, в представлении возвращает файл self.dispatch(request, *args, **kwargs) Файл"/Library/Python/2.7/site-packages/rest_framework/views.py", строка 477, в ответе на отправку = self.handle_exception(исключая) файл "/Library/Python/2.7/site-packages/rest_framework/views.py", строка 437, в handle_exception self.raise_uncaught_exception(исключая файл) "/Library/Python/2.7/site-packages/rest_framework/ views.py ", строка 474, в ответе об отправке = обработчик (запрос, * args, ** kwargs) Файл"/Library/Python/2.7/site-packages/rest_framework/decorators.py", строка 52, в обработчике возвращает функцию (* args, ** kwargs) Файл "/Users/prashantcraju/medicalrecords/conditions/views.py", строка 20, в файле create_condition serializer.save() "/Library/Python/2.7/site-packages/rest_framework/serializers.py", строка 214, в файле сохранения self.instance = self.create(validated_data)"/Users/prashantcraju/medicalrecords/conditions/serializers.py", строка 21, в файле create return Condition.new.create_condition(**attrs) Файл "/Users/prashantcraju/medicalrecords/conditions/managers.py", строка 20, в create_condition condition_obj = condition.models.Condition(name=kwargs['name'], contagious=kwargs['contagious'], Treatable=kwargs['поддается лечению'], treatment=kwargs['лечение'], серьезность = kwargs ['серьезность'], симптомы = kwargs ['симптомы'], специальность =kwargs['speciality']) KeyError: 'признаки' [19/ февраль /2017 20:51:11] "POST / условия / новые / условия / HTTP/1.1" 500 14989

Как вы можете видеть, поле 2 manytomany даже не отображается в журнале.

0 ответов

Другие вопросы по тегам