Найти - Пользователи
Полная версия: почему KeyError
Начало » Python для новичков » почему KeyError
1
AlexNasonov
Есть простое упражнение:
import web
import os


urls = (
'/hello', 'index'
)
app = web.application (urls, globals ())

PATH = os.path.join(os.path.dirname(__file__), 'templates/')
render = web.template.render (PATH)

class Index (object):
def GET (self):
form = web.input (name="Nobody")
greeting = "Hello, %s" % form.name
return render.index(greeting = greeting)

if __name__ == "__main__":
app.run ()
выдает KeyError. В чем проблема?
sypper-pit
а где вы взяли этот пример
o7412369815963
Это значит что нет искомого ключа (в словаре).

Попробуйте заменить имя класса на index
AlexNasonov
sypper-pit
а где вы взяли этот пример
Это пример из книжки Shaw Z.A. - Learn Python the Hard Way, 2nd Edition
AlexNasonov
o7412369815963
Это значит что нет искомого ключа (в словаре).

Попробуйте заменить имя класса на index
Заменил. Теперь Traceback выглядит еще страшнее и матерится на invalid syntax Template traceback: File ‘/home/alexnas/python/gothonweb/bin/templates/index.html’, line 16 </html> (index.html, line 16)

код темплейта:
$def with (greeting)

<html>

<head>
<title>Gothons Of Planet Percal #25</title>
</head>
<body>

$if greeting:
I just wanted to say <em style="color: green; font-size: 2em;">$greeting</em>.
$else
<em>Hello</em>, world!

</body>
</html>
Чем ему не угодил </html> вообще не понимаю..
PooH
после $else двоеточие -> $else:
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB