使用 HTML if 语句得到 return 结果

Using HTML if statements to return results

我正在尝试打印用户已上传到其帐户的课程列表,但我无法确定如何执行此操作。我尝试打印 {{ course.student_course }} 和 {{user.username}} 并且它们似乎都打印相同的东西。但是当我在 if 语句中进行比较时,没有 returns.

这是 html 片段

<div class="container h-100">
                    <div class="row justify-content-center">
                        {% if courses_list %}
                            {% for course in courses_list %}
                                {% if course.student_course == user.username %}
                                    <button type="button" class="btn btn-outline-primary">{{ subject }} </button>
                                    <p>{{ subject }}</p>
                                {% endif %}
                            {% endfor %} 
                        {% else %} 
                        <p>No courses have been uploaded.</p>
                        {% endif %} 

                    </div>
            </div>

这是我尝试访问的模型字段。

class Course(models.Model):
    subject = models.CharField(max_length=4)
    course_number = models.CharField(max_length=4, default='')
    course_name = models.CharField(max_length=100, default='')
    course_section = models.CharField(max_length=3, default='')
    student_course = models.OneToOneField(User, on_delete=models.CASCADE, default='')

    def __str__(self):
        return self.subject + " " + self.course_number

就像我说的,我尝试打印每个被比较的字段,它们都变成了同样的东西,但是当我尝试进行比较时,它 returns 什么都没有。

course.student_course 是一个用户实例

user.username是User实例的用户名字符串

因此您想使用 {% if course.student_course == user %}{% if course.student_course.username == user.username %}