Pickle django 查询?

2024-05-19

是否可以在数据库中腌制或以某种方式存储 django 查询?这是行不通的:

u = User.objects.all 
import cPickle
pickled_query = cPickle.dumps(u) # and store the pickled_query in a db-field.

有什么想法吗?

Updated:

import cPickle

class CustomData(models.Model):
    name = models.CharField(max_length = 30)
    pickled_query = models.CharField(max_length = 300)

def get_custom_result(self):
    q = cPickle.loads(self.pickled_query)
    return q()

>>> cd = CustomData(name="My data", pickled_query=cPickle.dumps(User.objects.all))
>>> cd.save()
>>> for item in cd.get_custom_result(): print item
# prints all the users in the database, not printing the query result 
# when pickled, but when called like cd.get_custom_result(), that is when 
# the query is actually executed.

现在这就是我想做的。我知道这段实际的代码不会运行,但它表明了我的意图;存储查询而不是结果,并在将来的某个时刻执行该查询。

更新#2:

>>> from django.contrib.auth.models import User
# adds two users; super and test
>>> u = User.objects.filter(username = 'test')
>>> import cPickle
>>> s = cPickle.dumps(u.query)
>>> s2 = cPickle.loads(s)
>>> o = s2.model.objects.all()
>>> o.query = s2
>>> for i in o: print i
...
super

还是不完全满意。我知道 QuerySet 很懒,所以执行 s2.model.objects.all() 不会执行获取所有用户的查询?


There's 文档 http://docs.djangoproject.com/en/dev/ref/models/querysets/#pickling-querysets为了那个原因。基本上,腌制query如果要重新创建 SQL 查询,请使用属性;如果要腌制当前结果的快照,请腌制整个查询集。

如果你腌制了结果,你的例子会做后者all()而不是绑定方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Pickle django 查询? 的相关文章

随机推荐

  • 如何舍入、取整、取整、截断

    如何对 jq jq 1 5 1 a5b5cbe 中的数字进行舍入 取整 取整和截断 例如 与 mass 188 72 我想 mass 188 有地板 mass 189 与天花板和圆形 舍入示例 5 52 gt 6 5 50 gt 5 or
  • 同步获取已解决 Promise 的值

    如果我们知道一个Promise肯定已经解决了 我们如何访问该值 如果不能 为什么不呢 let a Promise resolve 123 console log a value 以下不起作用 它打印 First Last 123 conso
  • 什么是内容语言和接受语言?

    我已经看到了 HTTP 标头Content Language and Accept Language 有人可以解释一下它们的用途以及它们之间的区别吗 我有一个多语言网站 想知道我是否应该将这两个网站设置为用户当前选择的语言 Content
  • 在 Java EE 中手动启动新线程安全吗?

    对于在会话范围内的 JSF 托管 bean 中生成线程是否安全 我找不到明确的答案 线程需要调用无状态 EJB 实例 依赖注入到托管 bean 上的方法 背景是我们有一份需要很长时间才能生成的报告 由于我们无法更改服务器设置 这导致 HTT
  • 导出维基百科翻译标题的简单方法

    有没有一种简单的方法可以导出维基百科的翻译标题以获得这样的集合 russian title gt english title 我试图从ruwiki 最新 页面 meta current xml bz2 and ruwiki 最新 pages
  • greendao list查看实体中的所有数据

    格林道 其中有一个简单的方法可以在ListView中显示来自Entity的所有记录 并且支持自动更新列表 也许是 Lazylist 类 如何使用它 看一看here https groups google com forum fromgrou
  • IOS7 状态栏在选定控制器上隐藏/显示

    我想在某些控制器上显示和隐藏状态栏 这可以完成吗 或者它更像是一个整体应用程序设置 我看过很多关于 plist 更新的帖子 问题 View controller based status bar appearance NO 如果这完成了 那
  • Hibernate 缺乏对一对一和多对一关系的删除孤儿支持的解决方法?

    Hibernate 不支持一对一或多对一关系的 删除孤儿 级联 我最近发现了这一点 这让我非常头疼 我的模型中有几个类 它们的设计使得孩子在父母之外没有现实世界的意义 我只有一个用于父类的 DAO 而没有用于子类的单独 DAO 这有效 pa
  • 如何向同一个 QMenu 添加多个 QAction?

    我正在尝试实现 Qt 菜单自定义 并且我提供了一个功能来添加相同的功能QAction在同一个人民币上下文菜单中多次 但是当我尝试这样做时 myMenu gt addAction myAction myMenu gt addAction my
  • 内存屏障:软件黑客的硬件视图示例 3

    我正在从原始论文中复制该图的文本 内存屏障 软件黑客的硬件视图 http www rdrop com 7Epaulmck scalability paper whymb 2010 06 07c pdf 表 4 显示了由 CPU 0 1 和
  • silverlight/xaml 中通知的图标徽章覆盖

    我的 silverlight 应用程序中有一个功能区栏 并且在其中一个图标上我希望有一个徽章图标 显示该图标激活的视图中的项目数 想象一下 OS X 中显示未读邮件数量的邮件图标或 IOS 应用程序图标上的通知计数器 我对 xaml 样式不
  • 如何将我的 json 字符串 avro 二进制编码为字节数组?

    我有一个实际的 JSON 字符串 我需要将其 avro 二进制编码为字节数组 在经历了Apache Avro 规范 http avro apache org docs 1 7 7 spec html 我想出了下面的代码 我不确定这是否是正确
  • 行对名称中具有特定模式的列求和

    我有一个像这样的数据表 DT lt ata table data table ref rep 3L 4L nb 12 15 i1 c 3 1e 05 0 044495 0 82244 0 322291 i2 c 0 000183 0 155
  • 在 Node 中使用 Babel 导入与请求 [重复]

    这个问题在这里已经有答案了 我想在一个文件中导入一个类 use strict import models from model class Foo bar export default new Foo 当我使用导入时它有效 例如 impor
  • 将本地文件 URL 转换为文件路径

    我有一个指向本地文件的 URL file home pi Desktop music Radio 20Song mp3 我需要以某种方式将其转换为传统的文件路径 例如os模块采用 home pi Desktop music Radio So
  • 电子邮件链接在 Android 上不起作用

    我有 HTML 格式的点击电子邮件链接的代码 它在我的电脑上运行良好 但在移动设备上不起作用 我只有 Android 所以我不知道问题是否仅在 Android 上或所有移动设备上 当我按下链接时 浏览器显示 网页无法显示 邮寄至 电子邮件受
  • 雪花存储过程变量绑定错误

    我正在尝试创建并执行一个简单的 Snowflake 存储过程 该过程接受输入参数并创建一个阶段 但是 当我尝试调用该过程时 它会抛出错误 参数值 无效 create or replace procedure raw test create
  • Spring MVC:如何在 JSP 中获取视图名称?

    是一种在 JSP 中访问视图名称的方法 profile在下面的示例中 或者我需要将此名称添加到模型中 RequestMapping value user account method RequestMethod GET return pro
  • Python:获取USB闪存驱动器设备的名称[windows]

    我正在尝试编写一个小程序 它将能够读取有关 REMOVEABLE DEVICE USB 的一些信息 我试过了pyusb https github com walac pyusb但我无法提取我需要的数据 我想从系统中读取 USB 设备的名称
  • Pickle django 查询?

    是否可以在数据库中腌制或以某种方式存储 django 查询 这是行不通的 u User objects all import cPickle pickled query cPickle dumps u and store the pickl