【发布时间】:2015-12-20 04:45:50
【问题描述】:
这是我的代码的一部分。
dbList = []
for obj in xmlData.iter("object")
task = TaskViewModel()
task.id = obj.("pk")
task.name = obj.find("field[@name='name']").text
task.parent_task_id = obj.find("field[@name='parent_task_id']").text
dbList.append(task)
我的问题是它只会给我重复的结果。
我的预期结果是:
dbList = ["dale","Michelle","Fred","Debbie"]
但它给了我这个结果:
dbList = ["Debbie","Debbie","Debbie","Debbie"]
我想我应该清除一些东西。
您好,这是示例文件:
<?xml version="1.0" encoding="utf-8"?>
<django-objects version="1.0">
<object model="task.task" pk="31">
<field name="name" type="CharField">Dale</field>
<field name="parent_task_id" type="IntegerField">0</field>
</object>
<object model="task.task" pk="32">
<field name="name" type="CharField">Michelle</field>
<field name="parent_task_id" type="IntegerField">0</field>
</object>
<object model="task.task" pk="33">
<field name="name" type="CharField">Fred</field>
<field name="parent_task_id" type="IntegerField">31</field>
</object>
<object model="task.task" pk="34">
<field name="name" type="CharField">Debbie</field>
<field name="parent_task_id" type="IntegerField">31</field>
</object>
</django-objects>"
我有这门课
class TaskViewModel():
id = 0
name = ""
parent_task_id = ""
这就是我这样做的原因:
for obj in xmlData.iter("object")
task = TaskViewModel()
task.id = obj.("pk")
task.name = obj.find("field[@name='name']").text
task.parent_task_id = obj.find("field[@name='parent_task_id']").text
dbList.append(task)
【问题讨论】:
-
您可能应该添加一个示例 xml 文件。
-
是的。查看源数据的样子有助于调试
-
大家好,我添加了我的 xml 文件
-
它只是在线读取最后一个值但四次
标签: python django xml-parsing