【发布时间】:2017-02-25 12:54:48
【问题描述】:
所以我有这些模型:
excercises_choices = (('Bench Press', 'Bench press'),('Overhead Press', 'Overhead Press'), ('Squat', 'Squat'),
('Deadlift', 'Deadlift'))
unit_choices = (('kg','kg'), ('lbs', 'lbs'))
class Lifts(models.Model):
user = models.ForeignKey('auth.User', null=True)
excercises = models.CharField(max_length=200, choices=excercises_choices)
sets = models.IntegerField(null=True, blank=True)
reps = models.IntegerField(null=True, blank=True)
weight = models.FloatField()
unit = models.CharField(max_length=3, choices=unit_choices)
created_date = models.ForeignKey('Dates')
amrap_set = models.BooleanField(default=False)
amrap_rep = models.IntegerField(null=True, blank=True)
def __str__(self):
return self.excercises
class Dates(models.Model):
created_date = models.DateField(unique=True)
def __str__(self):
return str(self.created_date)
假设我在不同日期为管理员提供了很少的电梯,而为 xx 用户提供了不同的电梯。 我想要多个电梯匹配一个日期,这就是我制作外键的原因。 (例如,2016 年 10 月 10 日的 3 次升降机和 2016 年 10 月 11 日的 2 次升降机)。
这是一个展示它的视图:
@login_required
def entries(request):
date = Dates.objects.all().order_by('-created_date')
lifts_by_user = Lifts.objects.filter(user=request.user)
return render(request, 'lift/entries.html', {'date': date,
'lifts_by_user': lifts_by_user})
和模板:
{% extends 'lift/base.html' %}
{% block content %}
{{ user }}
{% if user.is_authenticated %}
{% for date in date %}
<p><strong><a href="{% url 'lift_date' pk=date.pk %}">{{ date }}</a></strong>
{% for i in date.lifts_set.all %}
{{ i }}
{% endfor %}
<a href="{% url 'new_lifts' %}">add new lift</a></p>
{% endfor %}
{% endif %}
<p>
<a href="{% url 'entries_delete' %}">Delete lifts or dates </a>
</p>
{% endblock %}
问题是我不知道如何按日期和用户分开它。 This is how it looks like我如何保持这个模式日期 - lifts_to_that_date 但对于单独的用户?我不想在测试用户时看到管理员的条目
【问题讨论】:
标签: python django web-applications django-models django-templates