gpt4 book ai didi

python - Django 1.8 中什么时候调用 from_db_value ?

转载 作者:行者123 更新时间:2023-12-01 04:44:30 27 4
gpt4 key购买 nike

在 Django 1.8 发行说明中,提到 Django Fields 不再使用 SubfieldBase,并用 from_db_value 替换了赋值时的 to_python 调用>.

文档还指出,每当从数据库加载数据时都会调用 from_db_value

我的问题是,如果我直接读/写数据库(即使用cursor.execute()),是否会调用from_db_value?我最初的尝试和直觉告诉我不行,但我只是想确定一下。

最佳答案

参见The Django Documentation for Executing custom SQL directly .

Sometimes even Manager.raw() isn’t quite enough: you might need to perform queries that don’t map cleanly to models, or directly execute UPDATE, INSERT, or DELETE queries.

In these cases, you can always access the database directly, routing around the model layer entirely.

上面指出使用 cursor.execute() 将完全绕过模型逻辑,返回原始行结果。

如果您想执行原始查询并返回模型对象,请参阅the Django Documentation on Performing raw queries .

The raw() manager method can be used to perform raw SQL queries that return model instances:

for p in Person.objects.raw('SELECT * FROM myapp_person'):
print(p)

>>> John Smith
>>> Jane Jones

关于python - Django 1.8 中什么时候调用 from_db_value ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29785077/

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