有沒有辦法強制DetailView/ListView生成XML文件而不是HTML?Django DetailView/ListView強制XML呈現
我已經創建了一個XML模板,它呈現正確,但DetaiView不允許設置MIME類型。
任何想法?
謝謝!從SingleObjectTemplateResponseMixin
有沒有辦法強制DetailView/ListView生成XML文件而不是HTML?Django DetailView/ListView強制XML呈現
我已經創建了一個XML模板,它呈現正確,但DetaiView不允許設置MIME類型。
任何想法?
謝謝!從SingleObjectTemplateResponseMixin
DetailView
繼承從TemplateResponseMixin
其具有方法render_to_response
其中mimemtype
可以設定繼承。所以,像
class MyView(DetailView):
def render_to_response(self, context, **response_kwargs):
return super(MyView, self).render_to_response(
context,
mimetype='application/xml',
**response_kwargs)
應該工作
你可以簡單的使用content_type
屬性的查看
class MyView(DetailView):
content_type = 'application/xml'
它由TemplateResponseMixin因爲Django的1.5提供
你的代碼是完美的,但投InvalidSyntax異常,mimetype應放在** response_kwargs之前以便工作。 謝謝! – Michael
我總是做錯了! –