PeeWee - возитися з ORM.
Визначення моделі і створення схеми
пахне Django:
імпорт PeeWee
клас Блог (peewee.Model):
І NBSP; назва = peewee.CharField ()
І NBSP; Def __unicode __ (Я):
І NBSP; повернення self.title
Початковий клас (peewee.Model):
І NBSP; назва = peewee.CharField (max_length = 50)
І NBSP; зміст = peewee.TextField ()
І NBSP; pub_date = peewee.DateTimeField ()
І NBSP; блозі = peewee.ForeignKeyField (Блог)
І NBSP; Def __unicode __ (Я):
І NBSP; повернення "% S:% S '% (self.blog.title, self.title)
створити кілька таблиць:
>>> Blog.create_table ()
>>> Entry.create_table ()
зовнішні ключі працюють як Джанго
І NBSP; >>> B = Блог (назва = "Peewee Велика Пригода")
І NBSP; >>> b.save ()
І NBSP; >>> е = запис (назва = "Greatest фільм коли-небудь", зміст = "ТАК!", Блог = б)
І NBSP; >>> e.save ()
І NBSP; >>> e.blog
І NBSP;
І NBSP; >>> для е в b.entry_set:
І NBSP; ... друк e.title
І NBSP; ...
І NBSP; Greatest фільм коли-небудь?
дивною Запити
запити приходять в 4 смаків (вибрати / оновлення / вставки / видалення):
>>> Для I В xrange (50):
... Б = Блог (назва = 'блог-% d "% я)
... B.save ()
... Для J в xrange (I):
... Е = запис (назва = 'entry-% d "% J, блог = б)
... E.save ()
...
>>> [Obj.title для OBJ в Blog.select (). Де (title__contains = '0')]
[U'blog-0 ', u'blog-10 ", u'blog-20", u'blog-30 ", u'blog-40"]
>>> [Obj.title для OBJ в Blog.select (). Посторінково (3, 10)]
[U'blog-20 ", u'blog-21", u'blog-22 ", u'blog-23", u'blog-24 ',
І NBSP; u'blog-25 », u'blog-26», u'blog-27 », u'blog-28», u'blog-29 "]
>>> [Obj.title для OBJ в Blog.select (). Приєднатися (запис) .где (title__contains = "Вступ-45 ')]
[U'blog-46 ", u'blog-47", u'blog-48 ", u'blog-49 ']
>>> Blog.select (). Приєднатися (запис) .где ("Вступ-29" title__contains =). COUNT ()
20
Вимоги
- Python
Коментар не знайдено