|
|
ToDo:
|
|
#!/usr/bin/env python
import os
import cgi
import wsgiref.handlers
from google.appengine.ext.webapp import template
from google.appengine.ext import db
from google.appengine.ext import webapp
from google.appengine.api import users
class Book(db.Model):
author = db.StringProperty()
title = db.StringProperty()
price = db.IntegerProperty()
class Shop(db.Model):
name = db.StringProperty()
place = db.StringProperty()
class Purchase(db.Model):
book = db.ReferenceProperty(Book)
shop = db.ReferenceProperty(Shop)
user = db.UserProperty()
date = db.DateProperty()
class MainHandler(webapp.RequestHandler):
def get(self):
user = users.get_current_user()
if user:
purchase_list = db.GqlQuery("SELECT * FROM Purchase WHERE user = :1",
user)
url = users.create_logout_url(self.request.uri)
url_linktext = 'Logout'
template_values = {
"purchase_list" : purchase_list,
"url": url,
"url_linktext":url_linktext
}
path = os.path.join(os.path.dirname(__file__),'index.html')
self.response.out.write(template.render(path,template_values))
else:
self.redirect(users.create_login_url(self.request.uri))
class EntryHandler(webapp.RequestHandler):
def post(self):
book = Book()
book.author = self.request.get('author')
book.title = self.request.get('title')
book.price = int(self.request.get('price'))
book.put()
shop = Shop()
shop.name = self.request.get('name')
shop.place = self.request.get('place')
shop.put()
purchase = Purchase()
purchase.book = book
purchase.shop = shop
purchase.user = users.get_current_user()
purchase.put()
self.redirect('/')
def main():
application = webapp.WSGIApplication([('/', MainHandler),
('/entry',EntryHandler)],
debug=True)
wsgiref.handlers.CGIHandler().run(application)
if __name__ == '__main__':
main()
templateも晒しておこう。
<html>
<body>
<table border="1">
<tr>
<th>著者命</th>
<th>タイトル</th>
<th>価格</th>
<th>本屋名</th>
<th>場所</th>
</tr>
{% for purchase in purchase_list %}
<tr>
<td>{{purchase.book.author|escape}}</td>
<td>{{purchase.book.title|escape}}</td>
<td>{{purchase.book.price|escape}}</td>
<td>{{purchase.shop.name|escape}}</td>
<td>{{purchase.shop.place|escape}}</td>
</tr>
{% endfor %}
</table>
<form action="/entry" method="post">
<label>著者名:<input type="text" name="author" /></label>
<label>タイトル:<input type="text" name="title" /></label>
<label>価格:<input type="text" name="price" /></label>
<label>本屋名:<input type="text" name="name" /></label>
<label>場所:<input type="text" name="place" /></label>
<input type="submit" name="OK" value="登録" />
</form>
<a href="{{ url }}">{{ url_linktext }}</a>
</body>
</html>
鯛網のからくりを探ろうと海面に目を凝らしてみたのだが,尻尾はつかめなかったよ.あらかじめ網で囲ってあるか,網を下ろした後で船から放すか,可能性としては二つと読んでいたのだが.
お節句おめでとうございます。<br>柏餅は食べましたが菖蒲は買い忘れました。…食い気ばかりでして…。
鯛網のカラクリってどうじゃったかのぉ。<br>色々と伝聞では聞いたが、わしも実際には1回程度しか参加してないからのぉ。<br>まぁいまの瀬戸内海では自然な環境の状況において、現実的ではないような獲れる量ではあるの。
bounoさん、どもありがとうなのです。<br>柏餅はよんよんは食べなかったですよ。(主役なのにー)<br>ひかぞーは給食でも食べたそうです。<br>bounoさんのGWは如何でしたか?