@viewer.view('show_postlist_by_month_index')
@viewer.view('show_postlist_by_month')
def show_postlist_by_month(year, month, page=1):
    year = int(year)
    month = int(month)

    # for now, Imposter only supports the years between 1970 and 3000 B.C.
    if year < 1970 or year > 3000:
        abort(404)

    # month should be between 1 and 12
    if month < 1 or month > 12:
        abort(404)

    start_of_month = date(year, month, 1)
    next_month = date(year + abs(month/12), (month % 12)+1, 1)
    p_filter = and_(Post.pubdate > start_of_month, Post.pubdate < next_month)
    p_order = Post.pubdate.desc()
    posts = get_posts(p_filter, p_order)

    month_name = date(1900,month,1).strftime('%B')

    title = "Posted in %s, %d" % (month_name, year)
    paginator = Paginator(posts, app.config['ENTRIES_PER_PAGE'], page,
                          'show_postlist_by_month', year=year, month=month)

    return viewer.render('post_list.html', posts=posts, paginator=paginator,
                         title=title)
Create a list from multiple properties.
dataset/ETHPy150Open jkossen/imposter/frontend.py/show_postlist_by_month--crossover with--dataset/ETHPy150Open AppScale/appscale/AppServer/google/appengine/ext/bulkload/transform.py/list_from_multiproperty