Using StringListProperty efficently in Google App Engine


StringListProperty is a datastore value type that stores list items. Using StringListProperty is very easy:

#!/usr/bin/env python
from google.appengine.ext import webapp
from google.appengine.ext.webapp import util
from google.appengine.ext import db

class Page(db.Model):
title=db.StringProperty(multiline=False)
keywords=db.StringListProperty()

class MainHandler(webapp.RequestHandler):
def get(self):
newpage=Page()
newpage.title="Suat ATAN's books"
newpage.keywords=["book","author"]
newpage.put()

newpage=Page()
newpage.title="Suat ATAN's life"
newpage.keywords=["canada","author"]
newpage.put()

newpage=Page()
newpage.title="Suat ATAN's gusto"
newpage.keywords=["coffe","pizza"]
newpage.put()

pages=Page().all().filter("keywords" = "author")
for page in pages:
print i.title+"--"+i.keywords

def main():
application = webapp.WSGIApplication([('/', MainHandler)],
debug=True)
util.run_wsgi_app(application)

if __name__ == '__main__':
main()

We describe the StringListProperty in Page class and use it directly as newpage.keyword=[“item1”,“item2”]
When we want fetching rows that contains “author” string two rows will shown. Becuase only “Suat ATAN’s book” and “Suat ATAN’s life” pages have this string in its StringListPropery

Reklamlar

Yayınlayan

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google fotoğrafı

Google hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s