带有 XMLField 的 Django 模型
Posted
技术标签:
【中文标题】带有 XMLField 的 Django 模型【英文标题】:Django model with XMLField 【发布时间】:2017-12-05 13:19:27 【问题描述】:我是 python/django 的新手。
我正在使用 django 1.11、python 3.5.2 和 Oracle 11g r2
我想为oracle数据库中的TABLE1创建一个django模型
我的 TABLE1 有 4 个字段:
ID(类型:数字)
名称(类型:VARCHAR2)
姓氏(类型:VARCHAR2)
信息(类型:XMLTYPE)
这是xml字段的格式:
<?xml version = '1.0' encoding = 'UTF-8'?><extrainfo>
<info>
<movie>Titanic</movie>
<sport>Tennis</sport>
</info>
<info>
<movie>Troy</movie>
<sport>Soccer</sport>
</info>
</extrainfo>
我正在为 table1 创建一个 django 模型,但我不知道如何使用 django 读取 db 中的 xml 字段。
这是我的模特
class Table1(models.Model):
id = models.IntegerField(primary_key=True)
name = models.TextField(blank=True)
lastname = models.TextField(blank=True)
info = (I dont know what to write here to read the xmltype in db)
class Meta:
managed = False
db_table = 'TABLE1'
我该怎么办? 最好的方法是什么?
我需要获取 xmltype 信息。
请帮帮我,我卡住了。
谢谢。
【问题讨论】:
【参考方案1】:你试过https://github.com/theatlantic/django-xml吗?我试过这个,但它似乎没有保存到数据库。此外,您可以将 TextField 用作 xml 的容器并使用 lxml 解析器。
【讨论】:
【参考方案2】:github 上最新版本的 cx_Oracle (7.1.0.dev0) 可以在 django 中将 oracle xmltype
字段作为字符串加载。
【讨论】:
以上是关于带有 XMLField 的 Django 模型的主要内容,如果未能解决你的问题,请参考以下文章