在确定是否已选择日期时,我无法通过else语句。
我的应用程序用于显示课程列表以及下一课程的时间。有些课程根本没有分配时间,但我不想让字段保持空白,所以我写了一个简单的if else语句来检查课程上的日期是否找到,显示日期还显示一个按钮链接到联系页面。
if如预期的那样工作并显示时间,但不知何故不会过去在没有日期的类上呈现按钮。
这是我的模板代码:
<div class="col-md-6">
<strong>Upcoming Training Dates</strong><br />
{% for dates in classes.training_date.all %}
{% if dates.course_date != "" %}
<span class="course-dates">{{ dates.course_date|date:"M d"|upper }}</span>
{% else %}
<a href="{% url 'contact' %}" class="btn btn-warning btn-sm" style="padding: 5px 10px!important"><i class="fa fa-phone"></i> Contact Us for Training Times</a>
{% endif %}
{% endfor %}
</div>
更新问题
模型
class TrainingSchedule(models.Model):
COURSES = (
('Food Handlers', 'Food Handlers'),
('RABS', 'RABS'),
('Managers-Class', 'Managers-Class'),
('Managers-Test', 'Managers-Test'),
)
course_title = models.CharField(max_length=200, choices=COURSES, default=None, blank=True, verbose_name='Course Title')
course_date = models.DateField(verbose_name="Course Date", blank=True, default=None)
...
class TrainingClasses(models.Model):
...
training_date = models.ManyToManyField(TrainingSchedule, default=None, blank=True)
...
查看
def training_classes(request):
classes = TrainingClasses.objects.all().order_by('title')
training_dates = TrainingSchedule.objects.all()
return render(request, 'foodapp/training_classes.html', {
'classes': classes,
'training_dates': training_dates,
'key': settings.STRIPE_PUBLIC_KEY,
})
答案 0 :(得分:1)
你应该可以做类似的事情 {%if dates.course_date%}
答案 1 :(得分:0)
如果没有进一步的背景,我想象course_date
是一个约会,而且它们永远不会等于字符串,这就是为什么你总能得到日期
{% if dates.course_date %}
应该足以解决问题