示例#1
0
class Song(DBObject.DBObject):
    Fields = (DBFields.IntField('artistid', unsigned=True, key=True),
              DBFields.IntField('albumid', unsigned=True, key=True),
              DBFields.VarCharField('title',
                                    length=128,
                                    indexlen=8,
                                    index=True),
              DBFields.SmallIntField('tracknum', unsigned=True),
              DBFields.SmallIntField('discnum', unsigned=True),
              DBFields.SecsIntField('length', index=True),
              DBFields.ByteIntField('filesize'))

    Aliases = {'song': 'title', 'name': 'title'}
示例#2
0
class Album(DBObject.DBObject):
    Fields = (DBFields.AutoIncField('albumid'),
              DBFields.IntField('artistid', unsigned=True, equivKey=True),
              DBFields.VarCharField('name', length=128, indexlen=8,
                                    index=True),
              DBFields.VarCharField('genre',
                                    length=128,
                                    indexlen=8,
                                    index=True),
              DBFields.TimeIntField('released', index=True),
              DBFields.SmallIntField('year', unsigned=True, index=True),
              DBFields.SmallIntField('tracks', unsigned=True),
              DBFields.SmallIntField('discs', unsigned=True))

    Aliases = {'album': 'name'}
示例#3
0
class Artist(DBObject.DBObject):
    Fields = (DBFields.AutoIncField('artistid'),
              DBFields.VarCharField('name', length=128, equivKey=True),
              DBFields.SmallIntField('albums'))

    Aliases = {'artist': 'name'}

    def __init__(self, name):
        """Initialize the Artist object with the their name."""
        # we must call the init of the base class before we can do anything.
        DBObject.__init__(self)
        self.name = name