Posts Tagged ‘google app engine’

管理你的Google app engine项目

目前我们还不能从Google app engine直接管理项目代码文件,但是已经有人开发了相关的功能。早前,manatlanzipme能够将Google app engine项目打包成zip文件下载到本地。最近,chendaoan Chen BaipingGAE App files browser实现了更多管理的功能,看起来有点象Google app engine的管理页面了。

GAE App files browser目前能够做到:

Read more

taggable mixin

近日,google app engine推出了open source projects,已有近20个项目加入。taggable-mixin也是其中之一,由Adam Crossland主持维护。

Taggable 是一个Python mixin class,可以添加在任何从Google App Engine db.Model 继承的类中。taggable主要通过get_tags_as_string、set_tags和set_tags_from_string等方法实现对 tag的存取。以下是我对taggable进行的尝试:

在使用taggable前,首先把 taggable.py 复制到您的application目录。

Read more

Google App Engine显示数据库中的图片

GAE目前还不允许用户操作文件系统,上传的图片只能通过数据库存取。以下的代码实现了shop表中logo图片的动态显示:

class showShopLogo(webapp.RequestHandler):
  def get(self):
    shopid = self.request.get('sid')
    shop = Shop.get_by_id(int(shopid))
    if (shop and shop.logo):
      img = images.Image(shop.logo)
      img.resize(width=128, height=128)
      tumbimg = img.execute_transforms(output_encoding=images.PNG)
      self.response.headers['Content-Type'] = 'image/png'
      self.response.out.write(tumbimg)
    else:
      self.redirect('/images/nologo.png')

定义处理路径:

  application = webapp.WSGIApplication(
                                       [ ...
                                        ('/shop/logo', showShopLogo),
                                        ( ...)
                                       ], debug=True)
  wsgiref.handlers.CGIHandler().run(application)

我们可以通过http://example.com/shop/logo?sid=5这样的格式访问图片,在模板文件中,用<img src=”/shop/logo?sid={{shop.key.id}}” />实现图片的显示。

plog的模板

最近申请了google app engine服务,可以尝试用python做网页。早年曾经接触过一点django,断断续续地看了一点文档,screenshoot但是除了limodou的step by step里的示例外,也没做过其他什么的了。但是优雅的python仍然是我最喜欢的语言,时不时地总会去关注它。GAE的发布对诸多python爱好者来说,真是一个好消息。

plogkommit写的一个在google app engine上运行的blog,目前的功能还比较简单,用来学习挺不错的,代码不多,加上python语言易懂,基本都能看明白。昨天看到kommit说plog的默认模板难看,我觉得也是:-), 于是萌生了做一个模板试试看,也可以更了解GAE的web框架。说干就干,昨晚动手到今天完成。除了template和style文件的修改外,还修改了一些代码,效果可以看一下演示

kommit计划重构plog,重构后plog会实现简便的模板定制功能和插件接口,我期待着一个功能完善、使用便捷的plog。

Page 1 of 11