SQLAlchemy的封裝 Elixir

jopen 12年前發布 | 18K 次閱讀 ORM 持久層框架

Elixir是基于python界有名的ORM庫SQLAlchemy作的封裝。而且是輕量級的封裝,它提供了更簡單的方式來創建Python類并直接映射到關系數據庫表(即通常所說的Active Record設計模式),類似于Django中的ORM。

示例:

class Person(Entity):
    name = Field(String(128))
    addresses = OneToMany('Address')

class Address(Entity):
    email = Field(Unicode(128))
    owner = ManyToOne('Person')

class Person(Entity):
    id = Field(Integer, primary_key=True)
    name = Field(String(50), required=True)
    ssn = Field(String(50), unique=True)
    biography = Field(Text)
    join_date = Field(DateTime, default=datetime.datetime.now)
    photo = Field(Binary, deferred=True)
    _email = Field(String(20), colname='email', synonym='email'

    class Admin( Party.Admin ):
        verbose_name = _( 'Person' )
        list_display = ['first_name', 'last_name', 'contact_mechanisms_email', 'contact_mechanis

項目主頁:http://www.baiduhome.net/lib/view/home/1347413087085

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!