

@app.route('/pages', methods=['GET', 'POST'])
@login.login_required
def pages():
    if (request.method == 'POST'):
        shreds = set(request.form.getlist('shreds'))
        page_name = request.form.get('page_name')
        page_id = request.form.get('page_id')
        if page_id:
            page = Pages.objects.get(pk=page_id)
        else:
            (page, _) = Pages.objects.get_or_create(created_by=g.user.id, name=page_name)
        page.update(add_to_set__shreds=shreds)
        for shred in Cluster.objects(id__in=shreds):
            tags = shred.get_user_tags(g.user)
            if (tags is not None):
                tags.pages = list(set((tags.pages + [page])))
            shred.save()
    pages = Pages.objects(created_by=g.user.id)
    return render_template('_pages.html', pages=pages)

dataset/ETHPy150Open dchaplinsky/unshred-tag/app.py pages/original