sách gpt4 ai đã đi

Django "thực thi truy vấn lười biếng" hoạt động như thế nào

In lại 作者:搜寻专家 更新时间:2023-10-30 22:33:31 26 4
mua khóa gpt4 Nike

如果Django不使用“延迟查询执行”原则,主要问题是什么?

 q = Entry.objects.filter(headline__startswith="What")
q = q.filter(pub_date__lte=datetime.date.today())
q = q.exclude(body_text__icontains="food")
print(q)

当 print(q) 执行时,它会访问数据库。

1 Câu trả lời

可能会发生一些问题,

  • 如果 django 通过 q = Entry.objects.filter(headline__startswith="What") 命中,那么它必须需要将 QueryDict 存储到 q 中。出于这个简单的原因,它带来了一些大问题,例如数据类型、内存、时间复杂度 bla bla bla :(

  • 在那之后,您将无法获得那个很棒的功能 q.filter(.....)。因为当时已经有 value 所以,它不是一个可能的架构。但现在它正在存储对象,而且变量的行为也像一个对象。

关于Django "lazy query execution"原理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40827674/

26 4 0
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com