Django 编写查询以查看子项是否存在于其他表中,并在模板中显示该子项的存在
我有一个简单的应用程序,当孩子出了什么事时,为父母的每个孩子创建一个当天的日志条目 例如,一个家长包含三个孩子 每次与子级交互时,我都在日志表中创建一个条目来记录操作。日志是按天组织的。所以我可以在周二为三个孩子准备三份参赛作品,在周三为同样的三个孩子准备四份参赛作品 我想写一个查询,检查当天日志中是否存在子项。因此,当页面加载或刷新时,我设置了一个模板变量,指示它确实存在于日志中 我一直在想,下面的查询将整理出我需要什么。但我很难找出缺失的部分 型号:Django 编写查询以查看子项是否存在于其他表中,并在模板中显示该子项的存在,django,django-views,django-queryset,Django,Django Views,Django Queryset,我有一个简单的应用程序,当孩子出了什么事时,为父母的每个孩子创建一个当天的日志条目 例如,一个家长包含三个孩子 每次与子级交互时,我都在日志表中创建一个条目来记录操作。日志是按天组织的。所以我可以在周二为三个孩子准备三份参赛作品,在周三为同样的三个孩子准备四份参赛作品 我想写一个查询,检查当天日志中是否存在子项。因此,当页面加载或刷新时,我设置了一个模板变量,指示它确实存在于日志中 我一直在想,下面的查询将整理出我需要什么。但我很难找出缺失的部分 型号: class Child(models.M
class Child(models.Model):
description = models.TextField()
class Log(models.Model):
child = models.ForeignKey(Child, related_name="child_log")
day = models.DateField(auto_now_add=True, editable=False)
class Parent(models.Model):
parent_children = models.ManyToManyField(Child, blank=True, null=True)
查询集:
today = date.today()
children = Child.objects.filter(parent=parent.id) <= parent.id comes from request kwargs
child_list = Child.objects.filter(id__contains=children.id)
does_exist = Log.objects.filter(child=child_list.id).filter(day=today)
today=date.today()
children=Child.objects.filter(parent=parent.id)Hm。。。如果我理解正确,试试这个
{% for child in childs %}
{% if child.child_log.today.exists %}
#do your staff
...
并将管理器写入日志:
class LogManager(models.Manager)
def today(self)
return self.get_query_set().filter(day=datetime.datetime.today())
...
class Log(models.Model):
child = models.ForeignKey(Child, related_name="child_log")
day = models.DateField(auto_now_add=True, editable=False)
objects = LogManager()
模型中有关系吗?显示您的模型I添加到示例modelsWorks中。谢谢