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 trialDan A
Courses Plus Student 4,036 PointsCode Challenge: Looping Through Items
The challenge task: "Your template has been given a list named options. Loop through each item in options and create an <li> inside the <ul>. Print out the name key of each item."
I am struggling with this one and not sure what I am missing. Can I get a clarification? Based on the wording of the challenge, I am assuming 'options' is a list of dicts? If so, then those dicts have a key 'name'? So when I loop through options, my li's will output item['name'].
thx
from flask import Flask, render_template
from options import OPTIONS
app = Flask(__name__)
@app.route('/')
def index():
return render_template('options.html', options=OPTIONS)
<ul>
{% for item in options %}
<li>{{ item['name'] }} </li>
{% endfor %}
</ul>
3 Answers
Stone Preston
42,016 Pointslooks like you have a space after you print the ['name'] value out right before the closing list item tag.
<ul>
{% for item in options %}
<li>{{ item['name'] }} </li>
{% endfor %}
</ul>
this is probably whats causing your answer to be incorrect. the challenge engine is looking for the list item to contain the value itself, not the value with a space after it
remove the space.
<ul>
{% for item in options %}
<li>{{ item['name'] }}</li>
{% endfor %}
</ul>
Kenneth Love
Treehouse Guest TeacherThanks for helping on this one, Stone Preston. I've updated the CC because it was too picky about those spaces.
Stone Preston
42,016 Pointsno problem
Stéphane Diez
19,350 Points<li>{{ item.name }}</li>
is working too
Dan A
Courses Plus Student 4,036 PointsDan A
Courses Plus Student 4,036 PointsThat was it! Thanks so much!