ゲストブックの表示部分です。
use MyPage
import guestbook
import cgi
CherryClass Guestbook(MyPage):
variable:
data = guestbook.Guestbook() # Guestbookの新規インスタンス
function:
def viewGuestbook(self):
out = ''
for record in self.data.list():
out += "<b>%s - %s</b><br>%s<br><br>" % (
cgi.escape(record['name']), #HTMLをエスケープ
cgi.escape(record['date']),
cgi.escape(record['comment']))
return out
view:
def addFormSubmit(self, name, comment):
self.data.add(name, comment)
return self.redirect('index')
mask:
def index(self):
<py-eval="self.header('ゲストブック')">
<py-eval="self.viewGuestbook()">
<center><a href="addForm">メッセージを投稿する</a></center>
<py-eval="self.footer()">
def addForm(self):
<py-eval="self.header('メッセージ投稿')">
<form action="addFormSubmit" method="post">
名前: <input type="text" name="name"><br>
コメント:<br>
<textarea rows=5 cols=40 name="comment"></textarea><br>
<input type="submit" value="投稿する">
</form>
<py-eval="self.footer()">
各入力値をcgi.escapeでタグなどをエスケープしてから表示しています。