Django Dynamic Query ——Django中如何动态查询

2014-01-16 14:22:30 +08:00
 P9
Django中,常常遇到多个场景对某个模型进行不同条件的查询。
重复写查询语句,无疑是个累人的活儿!
有没有什么方法可以一劳永逸?

http://scriptogr.am/pison/post/django-dynamic-query-
3606 次点击
所在节点    Python
10 条回复
est
2014-01-16 15:11:08 +08:00
前几天CPyUG上的

P9
2014-01-16 16:07:21 +08:00
@est 我不太倾向用exec, 另外这个不符合python的精神阿。感觉在写perl,晦涩了。


兄弟手抖得太厉害了……
chuangbo
2014-01-17 16:40:18 +08:00
@est 更奇葩的不仅仅是 exec 还要把代码用 base64 + zlib 压缩。。
https://code.google.com/p/eurasia/source/browse/branches/3.2/eurasia.py#499
P9
2014-01-17 19:26:26 +08:00
@chuangbo 这样的好处是?
chuangbo
2014-01-18 00:04:41 +08:00
@P9 https://groups.google.com/d/msg/eurasia-users/eiKhsGzUl4g/027gEiyJtzUJ

沈游侠是这样回复我的

2012/12/28 ChuangBo:

> 有个疑惑,游侠为什么要把代码模板用 zlib + base64 压缩起来呢?为了 1000 lines achievement unlocked?
主要还是为了可读性及可维护性,我认为一旦代码行数到达一定规模,
即便使用强大的开发工具和代码查看工具,也无法很好地阅读及维护代码。

因为代码模板是运行在临时的 <string> 模块中,在调试时行号是从字符串
顶部开始计算,这部分内容比较适合压缩起来,并在调试时手工展开到新文件。
bh3887
2014-01-22 17:45:57 +08:00
感觉用的多的还是Q
P9
2014-01-22 19:01:54 +08:00
@bh3887 也是能结合Q做一些更复杂的查询动作de
P9
2014-01-22 19:04:15 +08:00
@chuangbo

答案超乎想象。我还以为这样的方式不具备可读性和维护性。
这样看来,还是自己的接触有限,无法体会到另一个层次的代码量?

‘因为代码模板是运行在临时的 <string> 模块中,在调试时行号是从字符串
顶部开始计算,这部分内容比较适合压缩起来,并在调试时手工展开到新文件’
这段的意思是 在调试时,可以随时调入代码查看上下文么?
P9
2014-01-22 19:04:36 +08:00
@chuangbo 还是第一次看到这样的方式。
chuangbo
2014-01-22 20:51:03 +08:00
@P9 我也理解不能。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/97241

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX