python类url_for()的实例源码

OSChina.py 文件源码 项目:flask-thirdLogin-demo 作者: staugur 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def index():
    code = request.args.get("code", "")
    #app.logger.debug("code:%s" %code)
    #app.logger.debug(request.args)
    if g.signin:
        return "logged_in"
    elif code:
        _data = Get_Access_Token(code)
        app.logger.debug(_data)
        access_token  = _data['access_token']
        uid = _data['uid']
        userData = Get_User_Info(access_token, uid)

        app.logger.debug(userData)

        #resp = render_template('info.html', userData=userData)
        #resp.set_cookie(key="logged_in", value='true', expires=None)

        resp = jsonify(userData)
        resp.set_cookie(key="logged_in", value='true', expires=None)
        return resp
    else:
        return redirect(url_for("login"))
qqlogin.py 文件源码 项目:flask-thirdLogin-demo 作者: staugur 项目源码 文件源码 阅读 28 收藏 0 点赞 0 评论 0
def index():
    code = request.args.get("code", "")
    #app.logger.debug("code:%s" %code)
    #app.logger.debug(request.args)
    if g.signin:
        return "logged_in"
    elif code:
        _data = Get_Access_Token(code)
        access_token  = _data['access_token']
        openid   = Get_OpenID(access_token)['openid']
        userData = Get_User_Info(access_token, openid)

        app.logger.debug(userData)

        #resp = render_template('info.html', userData=userData)
        #resp.set_cookie(key="logged_in", value='true', expires=None)

        resp = jsonify(userData)
        resp.set_cookie(key="logged_in", value='true', expires=None)
        return resp
    else:
        return redirect(url_for("login"))
weibologin.py 文件源码 项目:flask-thirdLogin-demo 作者: staugur 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def index():
    code = request.args.get("code", "")
    #app.logger.debug("code:%s" %code)
    #app.logger.debug(request.args)
    if g.signin:
        return "logged_in"
    elif code:
        _data = Get_Access_Token(code)
        app.logger.debug(_data)
        access_token  = _data['access_token']
        uid = _data['uid']
        userData = Get_User_Info(access_token, uid)

        app.logger.debug(userData)

        #resp = render_template('info.html', userData=userData)
        #resp.set_cookie(key="logged_in", value='true', expires=None)

        resp = jsonify(userData)
        resp.set_cookie(key="logged_in", value='true', expires=None)
        return resp
    else:
        return redirect(url_for("login"))
login.py 文件源码 项目:arch-security-tracker 作者: archlinux 项目源码 文件源码 阅读 45 收藏 0 点赞 0 评论 0
def login():
    if current_user.is_authenticated:
        return redirect(url_for('index'))

    form = LoginForm()
    if not form.validate_on_submit():
        status_code = Unauthorized.code if form.is_submitted() else 200
        return render_template('login.html',
                               title='Login',
                               form=form,
                               User=User,
                               password_length={'min': TRACKER_PASSWORD_LENGTH_MIN,
                                                'max': TRACKER_PASSWORD_LENGTH_MAX}), status_code

    user = user_assign_new_token(form.user)
    user.is_authenticated = True
    login_user(user)
    return redirect(url_for('index'))
blueprint.py 文件源码 项目:redberry 作者: michaelcho 项目源码 文件源码 阅读 28 收藏 0 点赞 0 评论 0
def admin_login_required(method):
    def is_admin(user):
        if isinstance(user.is_admin, bool):
            return user.is_admin
        else:
            return user.is_admin()

    @functools.wraps(method)
    def wrapper(*args, **kwargs):
        if not current_user.is_authenticated:
            flash("This section is for logged in users only.", 'warning')
            return redirect(url_for('redberry.home'))

        if not hasattr(current_user, 'is_admin'):
            flash("Redberry expects your user instance to implement an `is_admin` boolean attribute "
                  "or an `is_admin()` method.", 'warning')
            return redirect(url_for('redberry.home'))

        if not is_admin(current_user):
            flash("This section is for admin users only.", 'warning')
            return redirect(url_for('redberry.home'))

        return method(*args, **kwargs)

    return wrapper


############
# CMS ROUTES
############
blueprint.py 文件源码 项目:redberry 作者: michaelcho 项目源码 文件源码 阅读 30 收藏 0 点赞 0 评论 0
def show_post(slug):
    from redberry.models import RedPost
    post = RedPost.query.filter_by(slug=slug).first()
    if not post:
        flash("Post not found!", 'danger')
        return redirect(url_for('redberry.home'))

    return render_redberry('redberry/post.html', post=post)
blueprint.py 文件源码 项目:redberry 作者: michaelcho 项目源码 文件源码 阅读 26 收藏 0 点赞 0 评论 0
def show_category(category_slug):
    from redberry.models import RedCategory
    category = RedCategory.query.filter_by(slug=category_slug).first()
    if not category:
        flash("Category not found!", 'danger')
        return redirect(url_for('redberry.home'))
    return render_redberry('redberry/category.html', category=category)
blueprint.py 文件源码 项目:redberry 作者: michaelcho 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def new_record(model_name):
    from redberry.models import RedCategory, RedPost
    from redberry.forms import CategoryForm, PostForm

    if model_name == 'category':
        form = CategoryForm()
        new_record = RedCategory()

    elif model_name == 'post':
        form = PostForm()
        new_record = RedPost()

        # Convert category ids into objects for saving in the relationship.
        if form.categories.data:
            form.categories.data = RedCategory.query.filter(RedCategory.id.in_(form.categories.data)).all()
            form.categories.choices = [(c, c.title) for c in RedCategory.sorted()]
        else:
            form.categories.choices = [(c.id, c.title) for c in RedCategory.sorted()]

    if form.validate_on_submit():
        form.populate_obj(new_record)

        cms.config['db'].session.add(new_record)
        cms.config['db'].session.flush()

        build_sitemap()

        flash("Saved %s %s" % (model_name, new_record.id), 'success')
        return redirect(url_for('redberry.admin', model_name=model_name))

    return render_template('redberry/admin/form.html', form=form, model_name=model_name)
login_view.py 文件源码 项目:ELO-Darts 作者: pwgraham91 项目源码 文件源码 阅读 30 收藏 0 点赞 0 评论 0
def dev_login(user_id):
    if ENVIRONMENT == 'dev':
        login_user(db.session.query(User).get(user_id))
    return redirect(url_for('index'))
login_view.py 文件源码 项目:ELO-Darts 作者: pwgraham91 项目源码 文件源码 阅读 26 收藏 0 点赞 0 评论 0
def logout():
    logout_user()
    return flask.redirect(flask.url_for('index'))
app.py 文件源码 项目:quizbot-2017 作者: pycontw 项目源码 文件源码 阅读 28 收藏 0 点赞 0 评论 0
def index():
    bot_links = [
        {
            'title': 'LINE',
            'url': 'https://line.me/R/ti/p/W1MINAEbHE',
            'external': True,
        },
        {
            'title': 'Facebook (web)',
            'url': 'https://www.facebook.com/pycontwchatbot/',
            'external': True,
        },
        {
            'title': 'Facebook (app)',
            'url': 'fb://page/299082580532144',
            'external': True,
        },
    ]
    misc_links = [
        {
            'title': '???',
            'url': url_for('leaderboard'),
            'external': False,
        },
    ]
    return render_template(
        'index.html',
        bot_links=bot_links, misc_links=misc_links,
    )
__init__.py 文件源码 项目:OMW 作者: globalwordnet 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def logout():
    logout_user()
    return redirect(url_for("index"))
################################################################################



################################################################################
# SET UP CONNECTION WITH DATABASES
################################################################################
imhere.py 文件源码 项目:coms4156_jumpstart 作者: keirl 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def teacher_session():
    if '/teacher/' in request.path:
        if 'credentials' not in flask.session:
            return flask.redirect(flask.url_for('index'))
        elif not flask.session['is_teacher']:
            return flask.redirect(flask.url_for('register'))
imhere.py 文件源码 项目:coms4156_jumpstart 作者: keirl 项目源码 文件源码 阅读 26 收藏 0 点赞 0 评论 0
def student_session():
    if '/student/' in request.path:

        if 'credentials' not in flask.session:
            return flask.redirect(flask.url_for('index'))
        elif not flask.session['is_student']:
            return flask.redirect(flask.url_for('register'))


# make sure user is authenticated w/ live session on every request
imhere.py 文件源码 项目:coms4156_jumpstart 作者: keirl 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def manage_session():
    # want to go through oauth flow for this route specifically
    # not get stuck in redirect loop
    if request.path == '/oauth/callback':
        return

    # allow all users to visit the index page without a session
    if request.path == '/' or request.path == '/oauth/logout':
        return

    # validate that user has valid session
    # add the google user info into session
    if 'credentials' not in flask.session:
        flask.session['redirect'] = request.path
        return flask.redirect(flask.url_for('oauth2callback'))
imhere.py 文件源码 项目:coms4156_jumpstart 作者: keirl 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def switch_type():
    im = index_model.Index(flask.session['id'])
    if request.form['type'] == 'teacher':
        if im.is_teacher():
            return flask.redirect(flask.url_for('main_teacher'))
        else:
            return flask.redirect(flask.url_for('register'))

    elif request.form['type'] == 'student':
        if im.is_student():
            return flask.redirect(flask.url_for('main_student'))
        else:
            return flask.redirect(flask.url_for('register'))
imhere.py 文件源码 项目:coms4156_jumpstart 作者: keirl 项目源码 文件源码 阅读 36 收藏 0 点赞 0 评论 0
def login():

    im = index_model.Index(flask.session['id'])
    if im.is_student():
        print flask.url_for('main_student')
        return flask.redirect(flask.url_for('main_student'))
    elif im.is_teacher():
        return flask.redirect(flask.url_for('main_teacher'))
    else:
        return render_template('login.html', not_registered=True)
imhere.py 文件源码 项目:coms4156_jumpstart 作者: keirl 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def remove_class():
    tm = teachers_model.Teachers(flask.session['id'])

    # show potential courses to remove on get request
    if request.method == 'GET':
        courses = tm.get_courses()
        context = dict(data=courses)
        return render_template('remove_class.html', **context)

    # remove course by cid
    elif request.method == 'POST':
        cid = request.form['cid']
        tm.remove_course(cid)
        return flask.redirect(flask.url_for('main_teacher'))
imhere.py 文件源码 项目:coms4156_jumpstart 作者: keirl 项目源码 文件源码 阅读 24 收藏 0 点赞 0 评论 0
def oauth2callback():
    flow = oauth2client.client.flow_from_clientsecrets(
        'client_secrets_oauth.json',
        scope=[
            'https://www.googleapis.com/auth/userinfo.email',
            'https://www.googleapis.com/auth/userinfo.profile'],
        redirect_uri=flask.url_for('oauth2callback', _external=True))
    if 'code' not in flask.request.args:
        auth_uri = flow.step1_get_authorize_url()
        return flask.redirect(auth_uri)
    else:
        auth_code = flask.request.args.get('code')
        credentials = flow.step2_exchange(auth_code)
        flask.session['credentials'] = credentials.to_json()

        # use token to get user profile from google oauth api
        http_auth = credentials.authorize(httplib2.Http())
        userinfo_client = apiclient.discovery.build('oauth2', 'v2', http_auth)
        user = userinfo_client.userinfo().v2().me().get().execute()

        # TODO only allow columbia.edu emails
        # if 'columbia.edu' not in user['email']:
        #     return flask.redirect(flask.url_for('bademail'))

        um = users_model.Users()

        flask.session['google_user'] = user
        flask.session['id'] = um.get_or_create_user(user)

        # now add is_student and is_teacher to flask.session
        im = index_model.Index(flask.session['id'])
        flask.session['is_student'] = True if im.is_student() else False
        flask.session['is_teacher'] = True if im.is_teacher() else False

        redirect = flask.session['redirect']
        flask.session.pop('redirect', None)
        return flask.redirect(redirect)
imhere.py 文件源码 项目:coms4156_jumpstart 作者: keirl 项目源码 文件源码 阅读 49 收藏 0 点赞 0 评论 0
def logout():
    flask.session.clear()
    return flask.redirect(flask.url_for('index'))


问题


面经


文章

微信
公众号

扫码关注公众号