如何在数据存储区中实现数据总和(在网页中表示)

时间:2013-01-07 09:37:23

标签: python google-app-engine datastore

我打算建立一个关于管理的网站,并通过谷歌应用引擎跟踪我的钱。

但我遇到了一些问题。比如我如何通过在数据存储区中使用查询来表示我的总和

这是我的代码,我不知道如何处理sum_deal的东西

感谢您查看:)

class BlogHandler(webapp2.RequestHandler):
    def write(self, *a, **kw):
        self.response.out.write(*a, **kw)

    def render_str(self, template, **params):
        params['user'] = self.user
        return render_str(template, **params)

    def render(self, template, **kw):
        self.write(self.render_str(template, **kw))

class Book(db.Model):
    deal = db.FloatProperty(required= True)
    created = db.DateTimeProperty(auto_now_add=True)
    sum_deal = db.FloatProperty

class BookMe(BlogHandler):
    def render_book(self, deal="",sum_deal=""):
        deals = db.GqlQuery("SELECT * FROM Book ORDER BY created DESC")
        self.render("book.html", deal=deal, sum_deal=sum_deal,deals = deals)

    def get(self):
        render_book()

    def post(self):
        deal = self.request.get("deal")
        if deal:
            b = Book(deal = deal)
            b.put()
            self.redirect("/")

1 个答案:

答案 0 :(得分:0)

首先,不要使用浮点数来表示货币金额 - 由于浮点表示,您将受到各种错误的影响。使用小数。

其次,这个问题不应该特别困难。数据存储区不支持聚合,但您可以在视图中轻松执行此操作:只需遍历deals中的所有元素,并为每个元素添加deal的内容。