Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

CSS Flask Basics Character Builder Looping Through Items

I'm lost. I wonder what the list that is passed into templates/options.html is.

Is it a simple list of some items, and the list items are referred to by "name"? And the list can be looked up by name 'options'. With that assumption, I tried "for x in options"..."<li>{{x}}" to find it failed. I also tried, if the list is actually a list of 'dict's and the question asks to locate the dict, "for x in options['name']"..."<li>{{x}}", but this shows no different from the same "Bummer! Didn't find all.." error. Please help.

app.py
from flask import Flask, render_template

from options import OPTIONS

app = Flask(__name__)

@app.route('/')
def index():
    return render_template('options.html', options=OPTIONS)
templates/options.html
<ul>
{% for x in options %}
<li>{{x}}"></li>
 {% endfor %}
</ul>

1 Answer

Mikael Enarsson
Mikael Enarsson
7,056 Points

A couple of things:

First, you have a problematic quotation mark and greater than sign (">) right after your {{ x }}. You have to get rid of that.

The second problem is related to the task description. It says "... Print out the name key of each item.". This tells us that the list contains a number of dicts, and they are asking you to access the value of "name" from the dict. If you don't remember how to access dict items, the syntax is:

a_dict = {'name': 'Sam', 'job': 'Demon Hunter'}

name = a_dict['name']     #assigns name to 'Sam'

I hope this is clear and helpful ^^

Thanks! I got it.