我正在学习Python和django。我正在尝试创建一个xml文档以从视图中返回一些XML。我目前正在使用django开发服务器,我不断在我的视图中吐出这些信息,而不是我试图创建的文档。
这是我的代码
from django.http import HttpResponse
from mypoject.myapp.models import Username
from django.core import serializers
from xml.dom.minidom import Document
import datetime
def authenticate(request, username):
if request.method == "GET":
#Try to get the username
try:
checkUser = Username.objects.get(username__exact = username)
user = userCheck.get(username__exact = username)
userXML = serializers.serialize("xml", checkUser)
except Username.DoesNotExist:
#return XML with status "Failed"
return HttpResponse(xml, mimetype="text/xml")
except:
#return XML with status "Failed"
xmlFailed = Document()
meta = xmlFailed.createElement("meta")
xmlFailed.appendChild(meta)
status = xmlFailed.createElement("status")
meta.appendChild(status)
statusText = xmlFailed.createTextNode("Failed")
status.appendChild(statusText)
message = xmlFailed.createElement("message")
meta.appendChild(message)
totalRecords = xmlFailed.createElement("totalRecords")
meta.appendChild(totalRecords)
executionTime = xmlFailed.createElement("executionTime")
meta.appendChild(executionTime)
return HttpResponse(xmlFailed, mimetype="text/xml")
else:
#return happy XML code with status "Success"
当我在浏览器中查看时,这就是屏幕上的内容......
<xml.dom.minidom.Document instance at 0x993192c>
如果我注释掉了Document()创建消失了。所以我认为我只是需要它不要吐出信息。我一直在寻找,我找不到一个明确的答案让我相信我错过了一些明显的东西。
感谢您的帮助!
答案 0 :(得分:1)
您需要调用xmlFailed.toxml()
之类的内容才能从您的对象中获取XML - 看起来这不是您正在做的事情(在您未向我们展示的代码中)。< / p>