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 trialTAKUDZWA MUCHINEUTA
6,039 Pointskindly assist l don't know where l am getting it wrong
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
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 option in options %}
<li>option.name</li>
{%end for%}
</ul>
3 Answers
Alex Koumparos
Python Development Techdegree Student 36,887 PointsHi Takudzwa,
You have a couple of errors in your code.
First, when you close your for loop you need to ensure that you have a space between the delimiters that mark the beginning ({%
) and end (%}
) of your statement block. Note also that the statement to end a for loop is endfor
not end for
.
Second, inside your <li>
tag you just have the string "option.name
". This means that on every iteration of the loop, you will inject "option.name
" into the list item instead of the value of the name
attribute of the option
variable. Remember that to access a variable you have to wrap it with {{ }}
.
Hope that helps.
Happy coding,
Alex
Jasper Maposa
26,918 PointsAs Alex is saying
<ul>
{% for option in options %}
<li>{{ option.name }}</li>
{% endfor %}
</ul>
TAKUDZWA MUCHINEUTA
6,039 PointsThank you all for your assistance it worked.