我工作過GoogleAppEngine事件例子,我想 構建我可以進入事件數據GAE模板呈現形式爲HTML文本而不是形式
from google.appengine.ext.db import djangoforms
class Event(db.Model):
title = db.StringProperty(required=True)
description = db.TextProperty()
time = db.DateTimeProperty()
location = db.TextProperty()
creator = db.UserProperty()
class EventForm(djangoforms.ModelForm):
class Meta:
model = Event
class EventsPage(webapp.RequestHandler):
def get(self):
eventform = EventForm()
if users.get_current_user():
url = users.create_logout_url(self.request.uri)
url_linktext = 'Logout'
else:
url = users.create_login_url(self.request.uri)
url_linktext = 'Login'
template_values = {
'events': events,
'eventform': eventform,
'url': url,
'url_linktext': url_linktext,
}
template = jinja_environment.get_template('events.html')
self.response.out.write(template.render(template_values))
----events.html----
<html>
<head>
<link type="text/css" rel="stylesheet" href="/stylesheets/main.css" />
</head>
<body>
{% for event in events %}
<blockquote>{{ event.content|escape }}</blockquote>
{% endfor %}
<form action="/newevent" method="post">
<!-- Even though <table> is below, event form is not put inside <table>. Why?? -->
<table>
{{ eventform|escape }}
</table>
<div><input type="submit" value="New Event"></div>
</form>
<a href="{{ url }}">{{ url_linktext }}</a>
</body>
</html>
當我運行我的代碼形式,以下是呈現在我的網頁文本:
<tr><th><label for="id_title">Title:</label></th><td><input type="text" name="title" id="id_title" /></td></tr> <tr><th><label for="id_description">Description:</label></th><td><textarea id="id_description" rows="10" cols="40" name="description"></textarea></td></tr> <tr><th><label for="id_time">Time:</label></th><td><input type="text" name="time" id="id_time" /></td></tr> <tr><th><label for="id_location">Location:</label></th><td><textarea id="id_location" rows="10" cols="40" name="location"></textarea></td></tr> <tr><th><label for="id_creator">Creator:</label></th><td><input type="text" name="creator" id="id_creator" /></td></tr>
我可以告訴大家,這是表的代碼,我想在頁面呈現爲表格形式,而不是文字。任何想法爲什麼發生這種情況?以及如何 使它呈現爲一種形式?
你能發佈這類用於生成這個網頁的模板?它看起來像提供的文件缺少HTML的「」,「
」和「」樣板文件,很可能這是因爲該模板也缺少樣板文件。 –我添加了''標籤的整個模板。我仍然無法弄清楚爲什麼它將html作爲文本打印出來,但並未將其作爲表單呈現。 – codingJoe