我在Django管理列表中找到了用于改进大型数据库表查询性能的代码片段:
在Django 1.10中使用它时存在一些问题,我在前面的问题中已经讨论了这些问题:
特别是,_count需要重命名为count,query_set需要重命名为queryset。下面是片段相关部分的简短版本:
from django.core.paginator import Paginator
from django.core.cache import cache
class FasterAdminPaginator(Paginator):
def _get_count(self):
if
昨天我花了一天的大部分时间试图找到一个答案,但是我想不出如何把装潢师添加到模型中。
目标:根据用户输入的天数计算日期。用例:用户输入“开始日期”,以及表单中的天数。例如,用户输入的开始日期为1/1/2017,天= 5,calc日期应为1/6/2017。
我无法得到计算出的字段来完成我的模板。
下面的代码片段。
#models.py
from datetime import datetime, timedelta
from django.db import models
from django_extensions.db.models import TimeStampedModel
from
我尝试几次使用类方法的结果,而不做获得结果所需的繁重计算。
我看到以下几种选择。你认为哪一个是正确的,还是更多的?
每一种方法的优点和缺点是什么?
试/除方法
class Test:
def __init__(self, *args):
# do stuff
@property
def new_method(self):
try:
return self._new_property
except AttributeError:
# do some heavy calcula
我目前正在使用@cached_property在一个模型类上,我想在保存时删除它,以便在下一次调用时可以重新填充它。我该怎么做呢?示例: class Amodel():
#...model_fields....
@cached_property
def db_connection(self):
#get some thing in the db and cache here
instance = Amodel.objects.get(id=1)
variable = instance.db_connection
Amodel.objects.s
我正在尝试制作电视节目的模型,精确到剧集级别。假设树的每个级别(电视网、剧集、季节、剧集)都有不同的字段,我想为每个级别使用不同的模型类型。 我最初的方法是在每个级别使用一个外键来跟踪父级(这是一种简化的方法,我知道还有其他字段): class Network(models.Model):
...
class Series(models.Model):
network = models.ForeignKey(Network)
...
class Season(models.Model):
series = models.ForeignKey(Series)
我的django应用程序中有以下模型:
from django.contrib.auth.models import User
class Poll(models.Model):
title = models.CharField(max_length=200)
author = models.ForeignKey(User)
class Choice(models.Model):
poll = models.ForeignKey(Poll, on_delete=models.CASCADE)
text = models.CharField(max_lengt
我有一个模型Person,在这里我做了很多相同类型的查询。例如,我可能会在同一页中多次询问“配置文件图片”。
正如您在我的代码中所看到的,我已经实现了一个“排序”缓存:将结果放到一个数组中,然后,如果这个数组中有一个键,返回结果。
class Personne(BaseModel):
def __init__(self, *args, **kwargs):
# Mise en place de cache :
self.cache = {}
super(Personne, self).__init__(*args, **kwargs)
我在模型中有一个文本字段。它保存了该字段中的加密字符串。另外,我在DB中有两个函数来加密和解密。因此,我希望将这些DB函数封装在该字段的顶部,并将加密的字符串保存在DB中,在检索解密函数时,应该将解密函数包装在该字段上,对象应该在该属性中包含解密字符串。
我正在考虑使用Django中的Custom。请给我建议一下怎么做?
class User(models.model):
name = models.CharField()
age = models.IntegerField()
email = models.TextField()
例如,让我们以电子邮件字段为例,我希望
我遇到了以下代码的问题: return render(request, 'count.html',{'fulltext':fulltext,'count':len(wordlist),'worddictionary':worddictionary.items("")}) CMD告诉我第22行语法无效,但我找不到任何错误。 from django.http import HttpResponse
from django.shortcuts import render
import opera
在Django中是否可以对属性装饰器使用急切的加载?
我的代码作为示例
class Player(models.Model):
roles = models.ManyToManyField(Role, related_name='players')
@property
def role(self):
return ", ".join([r.name for r in self.roles.all().order_by('name')])
当使用属性输出player角色时,它每次运行一个查询。
实际上,我
我有这样的模型:
class Article(models.Model):
title = models.CharField(max_length=300, blank=False)
body = models.TextField(max_length=10000, blank=False)
created = models.DateTimeField(auto_now_add=True)
def last_post(self):
if self.post_set.count():
return self.post_s