All pastes #447698 Raw Edit

Something

public text v1 · immutable
·published 2007-04-19 07:44 UTC
rendered paste body
# Tagging
class TagItem(object): pass
class Tag(object): pass

tags_items_tags = Table('tags_items_tags', metadata,
      Column('id', Integer, ForeignKey('tags_data.id'), primary_key=True),
      Column('item_id', Integer, ForeignKey('tag_item.id'), primary_key=True)
   )

tags_data = Table('tags_data', metadata,
      Column('id', Integer, primary_key=True),
      Column('name', Unicode(128), nullable=False, index=True)
   )

tag_item = Table('tag_item', metadata,
      Column('id', Integer, primary_key=True),
      Column('item_id', Integer),
      Column('type_id', Integer),
   )

assign_mapper(session.context, TagItem, tag_item,
           properties={'tags':relation(Tag, secondary=tags_items_tags),
           }
      )
assign_mapper(session.context, Tag, tags_data,
           properties={'items':relation(TagItem, secondary=tags_items_tags),
                    }
      )


def _getItems(type_id, tagList, related):
  // Find all items which have the tags in tagList and belong to type_id type
   return []