Python Flask Basics Character Builder Loop Nested Items

Ron Tovbin
seal-mask
.a{fill-rule:evenodd;}techdegree
Ron Tovbin
Python Web Development Techdegree Student 6,268 Points

Not sure what the issue is here.

Thanks in advance !

flask_app.py
from flask import Flask, render_template

from teachers import TEACHERS

app = Flask(__name__)


@app.route('/')
def index():
    return render_template("teachers.html", teachers=TEACHERS)
templates/teachers.html
<ul class="teachers">
{% for teacher in teachers %}
  <li>
    <h2>{{ teacher['name'] }}</h2>
    <ul class="courses">
    {% for course in courses[teacher] %}
      <li>{{ course }} </li>
      {% endfor %}
    </ul>
  </li>
 {% endfor %}
</ul>

2 Answers

Jari Koopman
Jari Koopman
Python Web Development Techdegree Graduate 29,349 Points

Hi Ron,

The issue here is on this line in your HTML file: {% for course in courses[teacher] %} You're trying to get something out of a dict of courses, but it's never defined anywhere.

You were, however, pretty close! In the challenge description, it says that the teacher dict has a courses item in it. Try looping over that!

I hope I provided a good enough pointer like this, if you're still stuck, feel free to message me!

Regards, Jari