gpt4 book ai didi

python - 'dict' 对象没有属性 'id'

转载 作者:太空狗 更新时间:2023-10-29 19:35:50 24 4
gpt4 key购买 nike

这是我的代码。我正在尝试将 xml 字符串转换为 python 列表以显示在 html 模板中。

self.task_xml = "<?xml version="1.0" encoding="utf-8"?>
<django-objects version="1.0">
<object model="task.task" pk="31">
<field name="name" type="CharField">New Task</field>
<field name="parent_task_id" type="IntegerField">0</field>
</object>
<object model="task.task" pk="32">
<field name="name" type="CharField">New Task</field>
<field name="parent_task_id" type="IntegerField">0</field>
</object>
<object model="task.task" pk="33">
<field name="name" type="CharField">New Task</field>
<field name="parent_task_id" type="IntegerField">31</field>
</object>
<object model="task.task" pk="34">
<field name="name" type="CharField">New Task</field>
<field name="parent_task_id" type="IntegerField">31</field>
</object>
</django-objects>"

58 self.xmlData = ET.fromstring(self.db.task_xml)
59
60 self.task_list = []
61 taskList = []
62 for obj in self.xmlData.iter("object"):
63 parent_task_id = obj.find("field[@name='parent_task_id']").text
64 if parent_task_id == EMPTY_UUID:
65 taskList.append({'id': obj.get("pk"),
66 'name': obj.find("field[@name='name']").text,
67 'parent_task_id': parent_task_id ,
68 })
69 # Apprend taskList:
70 for task in taskList:
71 taskViewModel = TaskViewModel(task.id, True)
72 self.task_list.append(taskViewModel)

但是我得到了错误:

'dict' object has no attribute 'id'

第71行是task.id

你认为我在第 65 行有问题吗:

'id': obj.get("pk")

最佳答案

您错误地访问了词典。您需要将下标与字符串 'id' 一起使用,示例 -

taskViewModel = TaskViewModel(task['id'], True)

关于python - 'dict' 对象没有属性 'id',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32240718/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com