本文整理匯總了Python中book.Book.addData方法的典型用法代碼示例。如果您正苦於以下問題:Python Book.addData方法的具體用法?Python Book.addData怎麽用?Python Book.addData使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類book.Book
的用法示例。
在下文中一共展示了Book.addData方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: Indexable
# 需要導入模塊: from book import Book [as 別名]
# 或者: from book.Book import addData [as 別名]
class Indexable(Persistent):
# prepend _v_ to make it volatilive
_v_book = None
def __init__(self):
self._v_book = Book()
self._v_book.addData(self)
def __setattr__(self, name, value):
#only run this if the name is within the current objects attributes
if self._v_book and name not in Persistent.__dict__:
# if the book exists AND
# if the value has changed
# and that attribute is an indexable attribute
# OR we want it to be indexed, however it is not actually in the index (this condition will be caught
# in updateIndexedValue)
if self._v_book and self.__dict__.get(name) != value and name in self.indexableAttrs:
self._v_book.updateIndexedValue(self, name, value)
# save changes
self._v_book.commitTransaction()
Persistent.__setattr__(self, name, value)
#TODO
def __delattr__(self, name):
pass
示例2: Person
# 需要導入模塊: from book import Book [as 別名]
# 或者: from book.Book import addData [as 別名]
class Person(Persistent):
name = None
age = None
indexable = ('name',)
if __name__ == '__main__':
book = Book()
p = Person()
p.name = "Mike"
age = 20
p1 = Person()
p1.name = "Matt"
p1.age = 30
p2 = Person()
p2.name = "Mitch"
p2.age = 25
p3 = Person()
p3.name = "Bob"
p3.age = 21
book.addData(p)
book.addData(p1)
book.addData(p2)
book.addData(p3)
"""
#2nd run
p2 = book.indexdb['Person']['Mitch']
p2.name = "Mitch1aasdf"
p2.age = 25
"""
print map(lambda x: x.name, book.indexdb['Person'].values("Mi"))