XML / Django неправильно отображает XML?

#xml #django #django-templates

#xml #django #django-шаблоны

Вопрос:

Я пытаюсь передать данные из модели в XML-файл. Я делаю это так же, как и с обычным шаблоном .html:

 def getGroups(request):
    groups = SpeciesGroup.objects.all().order_by('id')
    return render_to_response(
        'groups.xml',
        {'groups':groups},
        context_instance = RequestContext(request)
    )
  

в моем groups.xml файл:

 <?xml version="1.0" encoding="UTF-8"?>

<Groups>
    {% for g in groups %}
    <group_id>{{g.id}}</group_id>
    <name>{{g.name}}</name> 
    <description>{{g.description}}</description>
    {% endfor %}
</Groups>
  

При загрузке URL-адреса в браузере я получаю пустой экран. Но когда я просматриваю исходный код, я получаю правильные данные:

 <?xml version="1.0" encoding="UTF-8"?>

<Groups>
    <group_id>1</group_id>
    <name>Small</name> 
    <description>Small</description>

    <group_id>2</group_id>
    <name>Medium</name> 
    <description>Medium</description>

    <group_id>3</group_id>
    <name>Large</name> 
    <description>Large</description>
</Groups>
  

Я проверил исходный XML, и все в порядке. Я предполагаю, что я что-то пропустил или что-то пропустил на мой взгляд. Бьюсь об заклад, это что-то простое, чего я не могу найти утром в понедельник!

Комментарии:

1. Я сам это понял! все, что мне было нужно, это добавить mimetype в мой return: return render_to_response(‘groups.xml ‘, {‘groups’:группы}, context_instance = RequestContext(запрос), mimetype=’application/xml’)

2. пожалуйста, добавьте это в качестве ответа и примите его (чтобы помочь другим пользователям so)

Ответ №1:

Я сам это понял! Все, что мне нужно было добавить mimetype в моем возврате:

 return render_to_response(
    'groups.xml',
    {'groups':groups},
    context_instance = RequestContext(request),
    mimetype='application/xml'
)