Извлечение элементов из QueryDict

У меня есть querydict, который выглядит следующим образом:

<QueryDict: {u'{"content":"aa","id":"1"}': [u'']}> 

Как я могу извлечь id ?

Я пробовал делать queryDictExample.get("id") , но это не сработало.

  • Отображение массива NumPy на месте
  • Как запустить повторяющуюся задачу в фреймворке Python?
  • Как рассчитать угол между линией и горизонтальной осью?
  • Ошибка: function () принимает не менее n аргументов (n задано)
  • Бит Setuid в скрипте python: Linux против Solaris
  • Эффективное планирование университетских курсов
  • Интерактивный выбор серий на графике matplotlib
  • Как распиливать или хранить сессию ноутбука Jupyter (IPython) для более поздних версий
  • 5 Solutions collect form web for “Извлечение элементов из QueryDict”

    Кажется, что ваш клиент отправляет JSON, а не formencoded данные. Вместо обращения к request.POST используйте request.body ( request.raw_post_data в версиях 1.3 или меньше) и используйте json.loads() для преобразования в dict.

    Возможно, это не полностью относится к вам. Но когда я искал это, ваш вопрос был первым вопросом Stackoverflow.

    Я просто хотел получить базовые данные POST в Django. Так что просто использование GET отлично подходит для меня. Как утверждали другие, может быть проще лучше форматировать любой скрипт, создающий запрос.

    В основном у меня есть AJAX, делающий сообщение в Django, POST выглядит примерно так:

     params = name=somename&data=abcdefg http.send(params); 

    то в моем view.py, я сделал это

     def somefuntion(request): if request.method == 'POST': log.info('POST applied') alldata=request.POST log.debug(alldata) data = alldata.get("data", "0") name = alldata.get("name", "0") log.info("POST name: " + name) log.info("POST data: " + data) 

    Результатом работы alldata было:

     <QueryDict: {u'data': [u'abcdefg'], u'name': [u'somename']}> 

    и команды get дают

     name: name data: abcdefg 

    Это работает для нескольких значений:

     dict(MyDict.lists()) 

    Ключи Dict – это поисковые вары, а значения dict – списки значений запроса.

    Вы можете использовать – request.data.get("content") Это даст вам данные напрямую, если в передней части (jQuery, Angular) вы НЕ использовали JSON.stringify(data) .

    Вы можете использовать values_list в запросе dict, то есть: MyDict.values_list('id') – он вернет список списков с идентификатором внутри. Чтобы вернуть список id, используйте MyDict.values_list ('id', flat = True)

    Полезные ссылки:

    https://docs.djangoproject.com/en/1.4/ref/models/querysets/#values-list

    https://docs.djangoproject.com/en/1.4/ref/models/querysets/#values

    Python - лучший язык программирования в мире.