view Mapping.py @ 5:bfd47f55d85b

add the updated date of the feed
author Dirk Olmes <dirk@xanthippe.ping.de>
date Mon, 26 Apr 2010 20:46:37 +0200
parents e0199f383442
children 87317ba41816
line wrap: on
line source


from Feed import Feed
from FeedEntry import FeedEntry
from sqlalchemy import Column
from sqlalchemy import DateTime
from sqlalchemy import ForeignKey
from sqlalchemy import Integer
from sqlalchemy import MetaData
from sqlalchemy import String
from sqlalchemy import Table
from sqlalchemy.orm import mapper
from sqlalchemy.orm import relation

def createMapping(engine):
    metadata = MetaData(engine)
    
    feedTable = Table("feed", metadata,
        Column("pk", Integer, primary_key=True),
        Column("name", String(255), nullable=False),
        Column("url", String(255), nullable=False)
    )
    
    feedEntryTable = Table("feed_entry", metadata,
        Column("pk", Integer, primary_key=True),
        Column("id", String(255), nullable=False),
        Column("link", String(255), nullable=False),
        Column("title", String, nullable=False),
        Column("summary", String, nullable=False),
        Column("updated", DateTime),
        Column("feed_id", Integer, ForeignKey("feed.pk"))
    )

    metadata.create_all()

    mapper(FeedEntry, feedEntryTable)
    mapper(Feed, feedTable,
        properties = {
            "entries" : relation(FeedEntry, backref = "feed")
        }
    )