【发布时间】:2018-02-12 08:25:34
【问题描述】:
我有这个模型的层次顺序:课程、学习计划、部门和院系。我在引导程序中有 2 列。第一栏列出了所有学院,以及他们的具体部门和每个部门的学习计划。第二列列出了所有课程。我希望当有人点击一个教师时,通过替换所有课程在第二列中显示该教师的特定课程,对于部门或学习计划也是如此。现在,我尝试了一些东西,但我不知道如何达到这个结果。我不知道如何列出每个学院的课程,正如你所注意到的,我把 faffties.0 作为测试。
<script>
$('#btnClick').on('click', function () {
if ($('#1').css('display') != 'none') {
$('#2').show().siblings('div').hide();
} else if ($('#2').css('display') != 'none') {
$('#1').show().siblings('div').hide();
}
});
</script>
<div class="row">
<div class="col-md-3">
<div class="jumbotron">
<h4>Search courses</h4>
<hr>
<br>
<ul>
{% for faculty in faculties %}
<li id="btnClick">{{ faculty.name }}</li>
<ul>
{% for department in departments %}
{% if department.faculty == faculty %}
<li>{{ department.name }}</li>
<ul>
{% for study in studies %}
{% if study.department == department %}
<li>{{ study.name }}</li>
{% endif %}
{% endfor %}
</ul>
{% endif %}
{% endfor %}
</ul>
{% endfor %}
</ul>
</div>
</div>
<div class="col-md-9">
<div class="jumbotron">
<div id="1">
<h3>All courses</h3>
<ul>
{% for course in courses %}
<li>
<a id="first" href={{ course.slug }}>{{ course.name }}</a>
</li>
{% endfor %}
</ul>
</div>
<div id="2" style="display:none;">
<h3> {{ faculties.0 }} courses</h3>
<ul>
{% for course in courses %}
<li>
<a id="first" href={{ course.slug }}>{{ course.name }}</a>
<p>chinchin</p>
</li>
{% endfor %}
</ul>
</div>
</div>
</div>
</div>
这就是现在的样子:https://i.imgur.com/fLq7MH2.png
【问题讨论】:
-
尝试使用除 id´s 以外的类,您会在循环中生成相同的 id´s,这是无效的并且可能导致错误(一个 id 应该只出现一次)
-
@johnSmith 做到了。现在下一步是什么?
-
您在两种情况下都使用完全相同的
for course in courses循环,据我所知,没有更改courses代表的内容。您如何期望它知道哪些课程属于特定教师? -
@PerlPingu 是的,这就是我正在努力解决的问题。我该怎么办?
-
如果您提供模型的实际结构,或者至少提供连接它们的外键/关系字段,将会有所帮助。
标签: python html django twitter-bootstrap