keywords = Table('keywords', engine,
Column('keyword_id', Integer, primary_key = True),
- Column('name', String(50))
+ Column('keyword_name', String(50))
)
itemkeywords = Table('article_keywords', engine,
# class definitions
class Keyword(object):
def __init__(self, name = None):
- self.name = name
+ self.keyword_name = name
class Article(object):
pass
# define a mapper that does many-to-many on the 'itemkeywords' association
# table
Article.mapper = mapper(Article, articles, properties = dict(
- keywords = relation(mapper(Keyword, keywords), keywords, itemkeywords, lazy=False)
+ keywords = relation(mapper(Keyword, keywords), itemkeywords, lazy=False)
)
)
[{'keyword_id': 1, 'article_id': 1}, {'keyword_id': 2, 'article_id': 1}]
</&>
# select articles based on a keyword. select_by will handle the extra joins.
- <&formatting.myt:poplink&>articles = Article.mapper.select_by(keyword='politics')
+ <&formatting.myt:poplink&>articles = Article.mapper.select_by(keyword_name='politics')
<&|formatting.myt:codepopper, link="sql" &>
SELECT articles.article_id AS articles_article_id,
articles.article_headline AS articles_article_headline,