本文整理汇总了Python中tipfy.redirect函数的典型用法代码示例。如果您正苦于以下问题:Python redirect函数的具体用法?Python redirect怎么用?Python redirect使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了redirect函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: post
def post(self, **kwargs):
redirect_url = self.redirect_path()
if self.auth_current_user:
# User is already registered, so don't process the signup form.
return redirect(redirect_url)
if self.form.validate():
auth_id = self.auth_session.get('id')
user = self.auth_create_user(self.form.nickname.data, auth_id)
if user:
self.auth_set_session(user.auth_id, user.session_id, '1')
self.set_message('success', 'You are now registered. '
'Welcome!', flash=True, life=5)
username = self.form.nickname.data
Poof(key_name=username, username = username).put()
Profile(key_name = username, joined = date.today(), username = username, submissions = 0, wins = 0, points = 0, money = 0.0).put()
return redirect(redirect_url)
else:
self.set_message('error', 'This nickname is already '
'registered.', life=None)
return self.get(**kwargs)
self.set_message('error', 'A problem occurred. Please correct the '
'errors listed in the form.', life=None)
return self.get(**kwargs)
示例2: post
def post(self, **kwargs):
redirect_url = self.redirect_path()
if self.auth_current_user:
# User is already registered, so don't process the signup form.
return redirect(redirect_url)
if self.form.validate():
username = self.form.username.data
password = self.form.password.data
password_confirm = self.form.password_confirm.data
if password != password_confirm:
self.set_message('error', "Password confirmation didn't match.",
life=None)
return self.get(**kwargs)
auth_id = 'own|%s' % username
user = self.auth_create_user(username, auth_id, password=password)
if user:
self.auth_set_session(user.auth_id, user.session_id, '1')
self.set_message('success', 'You are now registered. '
'Welcome!', flash=True, life=5)
return redirect(redirect_url)
else:
self.set_message('error', 'This nickname is already '
'registered.', life=None)
return self.get(**kwargs)
self.set_message('error', 'A problem occurred. Please correct the '
'errors listed in the form.', life=None)
return self.get(**kwargs)
示例3: _user_required
def _user_required(handler):
"""Implementation for user_required and UserRequiredMiddleware."""
if not handler.auth_session:
return redirect(handler.auth_login_url())
if not handler.auth_current_user:
return redirect(handler.auth_signup_url())
示例4: post
def post(self, **kwargs):
redirect_url = self.redirect_path()
if self.auth_current_user:
# User is already registered, so don't display the signup form.
return redirect(redirect_url)
if self.form.validate():
username = self.form.username.data
password = self.form.password.data
remember = self.form.remember.data
user = self.auth_get_user_entity(username=username)
if user is not None and user.disabled is not None and user.disabled is True:
self.set_message('error', 'Your account has been disabled. You can request a new account if you like. ', life=None)
else :
res = self.auth_login_with_form(username, password, remember)
if self.auth_current_user and self.auth_current_user.assigned_to is not None:
logging.log(logging.INFO, "assigned to client " + self.auth_current_user.assigned_to)
self.session['client'] = self.auth_current_user.assigned_to
redirect_url = url_for("clients-pretty")
if self.auth_current_user and self.auth_current_user.is_admin:
redirect_url = url_for("admin-dashboard")
if res:
return redirect(redirect_url)
self.set_message('error', 'Authentication failed. Please try again.', life=None)
return self.get(**kwargs)
示例5: post
def post(self, **kwargs):
redirect_url = self.redirect_path()
if self.auth_current_user:
# User is already registered, so don't process the sign up form.
return redirect(redirect_url)
if self.form.validate():
auth_id = self.auth_session.get('id')
kwargs['uid'] = str(self.auth_session.get('uid'))
kwargs['name'] = self.auth_session.get('name')
kwargs['profile_url'] = self.auth_session.get('profile_url')
kwargs['profile_image_url'] = 'http://graph.facebook.com/%s/picture' % str(self.auth_session.get('uid'))
kwargs['access_token'] = self.auth_session.get('access_token')
kwargs['expires_seconds'] = self.auth_session.get('expires_seconds')
kwargs['friend_ids'] = self.auth_session.get('friend_ids')
user = self.auth_create_user(username=self.form.nickname.data, auth_id=auth_id, **kwargs)
if user:
self.auth_set_session(user.auth_id, user.session_id, '1')
self.set_message('success', 'You are now registered. '
'Welcome!', flash=True, life=5)
return redirect(redirect_url)
else:
self.set_message('error', 'This nickname is already '
'registered.', life=None)
return self.get(**kwargs)
self.set_message('error', 'A problem occurred. Please correct the '
'errors listed in the form.', life=None)
return self.get(**kwargs)
示例6: post
def post(self, board, thread, ajax=False):
logging.info("post called")
if not antiwipe.check(self.request.remote_addr):
logging.warning("wipe redirect: %r" % self.request.remote_addr)
return redirect("http://winry.on.nimp.org" )
# validate post form
form = PostForm(self.request.form)
if not form.validate():
return redirect("/%s/" % board)
logging.info("data: %r" % form.data)
logging.info("form: %r" % self.request.form)
# if ok, save
post, thread = save_post(self.request, form.data, board, thread)
key = board + "%d" % post
cookie = self.get_secure_cookie(key)
cookie["win"] = key
if ajax:
return Response('{"post":%d }' % post)
return redirect("/%s/%d/" % (board, thread))
示例7: post
def post(self, board, thread):
logging.info("post called")
ip = self.request.remote_addr
qkey = "ip-%s" % ip
quota = memcache.get(qkey) or 0
quota += 1
memcache.set(qkey, quota, time=POST_INERVAL*quota)
logging.info("ip: %s, quota: %d" % (ip, quota))
if quota >= POST_QUOTA:
return redirect("http://winry.on.nimp.org" )
# validate post form
form = PostForm(self.request.form)
if not form.validate():
return redirect("/%s/" % board)
# if ok, save
logging.info("data valid %r" %( form.data,))
post, thread = save_post(self.request, form.data, board, thread)
key = board + "%d" % post
cookie = self.get_secure_cookie(key)
cookie["win"] = key
return redirect("/%s/%d" % (board, thread))
示例8: _check_refresh_user
def _check_refresh_user(handler):
error_messages = []
if not handler.auth_session:
logging.info('no auth session, redirecting to login')
return redirect(handler.auth_login_url())
if not handler.auth_current_user:
logging.info('have auth session, no user, redirecting to signup')
newUrl = redirect(handler.auth_signup_url())
return newUrl
def wrapper( *args, **kwargs):
kwargs.update({'error_messages': error_messages}) # Edit the keyword arguments -- here, enable debug mode no matter what
# print 'Calling function "%s" with arguments %s and keyword arguments %s' % (handler.__name__, args, kwargs)
return handler('doit', *args, **kwargs)
user = handler.auth_current_user
FACEBOOK_APP_ID = handler.app.get_config('tipfy.ext.auth.facebook', 'app_id')
FACEBOOK_APP_KEY = handler.app.get_config('tipfy.ext.auth.facebook', 'api_key')
FACEBOOK_APP_SECRET = handler.app.get_config('tipfy.ext.auth.facebook', 'app_secret')
# fb_user = facebookAPI.get_user_from_cookie(handler.request.cookies, FACEBOOK_APP_KEY, FACEBOOK_APP_SECRET)
cookie_token = handler.request.cookies.get("tr_fb_access_token")
if cookie_token:
user.access_token = cookie_token #update the access token
error_messages.append('updated access token from TR cookie %s' % user.access_token)
else:
#error_messages.append('no tr_fb_access_token cookie')
logging.warning('no tr facebook cookie to read.')
logging.warning('environment:' + handler.app.get_config('tipfy.ext.auth.facebook', 'environment') + ' api key:' + FACEBOOK_APP_KEY)
# if not user.access_token:
# raise 'no access token, can\'t update user info'
if user and user.access_token:
graph = facebookAPI.GraphAPI(user.access_token)
try:
profile = graph.get_object("me")
user.name = profile['name']
friends = graph.get_connections("me", "friends")
user.friend_ids = ['facebook|' + friend['id'] for friend in friends['data']]
error_messages.append('friend list updated')
except HTTPError, e:
if e.headers['www-authenticate'].find('access token') != -1:
token_error = 'facebook rejected access token %s' % user.access_token
#error_messages.append(token_error)
error_messages.append('friends list not refreshed')
logging.warning(token_error)
logging.warning(e.headers['www-authenticate'])
wrapper.attribute = 1
return wrapper()
finally:
示例9: decorated
def decorated(*args, **kwargs):
if get_current_user() or _is_auth_endpoint(('signup_endpoint',
'login_endpoint')):
return func(*args, **kwargs)
if is_authenticated():
# Redirect to signup page.
return redirect(create_signup_url(local.request.url))
else:
# Redirect to login page.
return redirect(create_login_url(local.request.url))
示例10: post
def post(self, **kwargs):
if self.current_user is not None:
# Don't allow existing users to access this page.
return redirect(request.args.get('redirect', '/'))
user = None
error = None
form, use_password = get_signup_form()
username = form.data['username']
email = form.data['email']
kwargs = {'email': email}
if use_password:
kwargs['password'] = request.form.get('password')
if kwargs['password'] != request.form.get('confirm_password'):
error = True
self.messages.add_form_error(_("Passwords didn't match."))
if error is None:
kwargs['is_admin'] = False
if use_password:
# Own authentication.
auth_id = 'own|%s' % username
else:
current_user = users.get_current_user()
if current_user is not None:
# App Engine authentication.
auth_id = 'gae|%s' % current_user.user_id()
kwargs['is_admin'] = users.is_current_user_admin()
else:
# OpenId, Oauth, Facebook, Twitter or FriendFeed.
raise NotImplementedError()
user = get_auth_system().create_user(username, auth_id, **kwargs)
if user is None:
self.messages.add_form_error(_('Username already exists. '
'Please try a different one.'))
if user is not None:
redirect_url = request.args.get('redirect', '/')
if use_password:
return redirect(create_login_url(redirect_url))
else:
return redirect(redirect_url)
else:
context = {
'form': form,
'messages': self.messages,
}
return self.render_response('users/signup.html', **context)
示例11: get
def get(self, **kwargs):
redirect_url = self.redirect_path()
if self.auth_current_user:
# User is already registered, so don't display the registration form.
return redirect(redirect_url)
return self.render_response('register.html', form=self.form)
示例12: post
def post(self, product_id=None, **kwargs):
"""Handle submitted form data"""
# validate form
if self.form.validate():
name = self.form.name.data
description = self.form.description.data
price = self.form.price.data
unit = self.form.unit.data
live = self.form.live.data
tags = self.form.tags.data
language = self.form.language.data
if tags is not None:
tags = [tag.strip() for tag in tags.split(',') if tag != '']
# save edit form
if product_id:
product = Product.get_by_id(product_id)
product.name = name
product.description = description
product.price = price
product.unit = unit
product.live = live
product.tags = tags
product.language = language
# save new form
else:
product = Product(name=name, description=description, price=price, unit=unit, live=live, tags=tags, language=language)
if product.put():
return redirect('/admin/shop/products/')
return self.get(**kwargs)
示例13: get
def get(self, **kwargs):
if not self.auth_current_user.is_admin and not self.auth_current_user.is_staff:
return redirect(url_for('auth/login'))
clientid = kwargs['clientid']
jobs = JobModel.all()
jobs.filter("Client = ", ClientModel.get(clientid))
jobs.filter("Invoiced != " , True)
context = []
if self.request.is_xhr:
for job in jobs:
os = None
js = None
if job.OrderStage and lstOrderStages[job.OrderStage]:
os = lstOrderStages[job.OrderStage]
if job.JobStage:
js = lstJobStages[job.JobStage]
context.append({
'name' : job.Nickname,
'jobstage': js,
'orderstage': os,
'id' : str(job.key()),
'created': job.Created.strftime("%b %d %Y"),
'quote' : job.Quote
});
return render_json_response(context)
else:
return render_response('hello.html', **context)
示例14: _admin_required
def _admin_required(handler):
"""Implementation for admin_required and AdminRequiredMiddleware."""
if not handler.auth_session:
return redirect(handler.auth_login_url())
if not handler.auth_is_admin:
abort(403)
示例15: _on_request_token_more
def _on_request_token_more(self, authorize_url, callback_uri, response, app_name):
"""
:param authorize_url:
:param callback_uri:
:param response:
:return:
"""
if not response:
logging.warning('Could not get OAuth request token.')
abort(500)
elif response.status_code < 200 or response.status_code >= 300:
logging.warning('Invalid OAuth response (%d): %s',
response.status_code, response.content)
abort(500)
request_token = _oauth_parse_responsex(response.content)
data = '|'.join([request_token['key'], request_token['secret']])
self.set_cookie('_oauth_request_token', data)
args = dict(
application_name=self._OAUTH_APP_NAME,
oauth_callback=self.request.url,
oauth_consumer_key=self._netflix_consumer_key(),
oauth_token=request_token['key']
)
if callback_uri:
args['oauth_callback'] = urlparse.urljoin(
self.request.url, callback_uri)
return redirect(authorize_url + '?' + urllib.urlencode(args))