django模型的物化注释

dj_mano的Python项目详细描述


django模型的具体化注释。典型的用例是跟踪 文章中的评论,或用户的贡献数。

安装

pip install dj_mano

用法

代码

使用dj_mano非常简单,您只需创建一个字段并给它添加注释 想让它保持住。

如果需要,可以对正在执行的批注应用一些筛选器,例如只计算正数 例举评论。在这种情况下,您可以提供一个函数,该函数将返回 将被注释。注意,queryset必须从持有物化对象的对象开始 注释字段。

型号
fromdjango.dbimportmodelsfromdj_manoimportMaterializedAnnotationIntegerFielddefswag_model_c():returnModelA.objects.filter(models_b__models_c__has_swag=True)classModelA(models.Model):count_b=MaterializedAnnotationIntegerField(models.Count('models_b'))count_c=MaterializedAnnotationIntegerField(models.Count('models_b__models_c'))count_swag=MaterializedAnnotationIntegerField(models.Count('models_b__models_c'),swag_model_c)classModelB(models.Model):model_a=models.ForeignKey('ModelA',related_name='models_b')classModelC(models.Model):model_b=models.ForeignKey('ModelB',related_name='models_c')has_swag=models.BooleanField(default=False)

网址.py

fromdjango.conf.urlsimportpatternsfromdj_manoimporthook_it_allhook_it_all()urlpatterns=patterns('',...)

命令

有一个命令可以简单地将所有字段同步到它们的实际值。

注意:如果要使用此命令,则必须将dj mano放入已安装的应用程序中。

./manage.py dj_mano_sync

许可证

这个库是根据wtfpl的条款授权的。请参阅随附的许可证文件。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java流/下载文件,无需在Spring Boot中保留内存   kotlin/java是否有类似TryParse()的东西?   java Spring引导找不到用户类型的属性ID   java Spring 2到Spring 3的迁移:一个控制器用于多个视图   java包含多个程序包名为“安卓”的库。支持图样可提取'   java spring JPA是否支持自定义值框架?   java转义出基于文本字段的搜索栏   java AAPT:错误:未找到样式属性“安卓:attr/WindowsPlashCreenBackground”   java从文本文件中读取纬度和经度   java哪里可以找到如何使用排序的示例。顺序ignorecase(),其中nullhandling nulls last用于自定义Spring JPA如何提供查询   尝试使用Dialogflow上的Webhook动态给出响应时,java获取Webhook响应错误(206)   如何在java中替换匹配的字符串?   java模拟数学的最大价值。随机的   java Spring RestTemplate GET请求未给出正确响应   春爪哇。lang.IllegalArgumentException   java系统。load()永远不会发生   java剪辑循环不工作   java如何从maven构建中删除staxapi   java ThreadPoolExecutor的排队行为是否可以自定义,以更喜欢创建新线程而不是排队?