本文整理汇总了Python中users.User.get_or_insert方法的典型用法代码示例。如果您正苦于以下问题:Python User.get_or_insert方法的具体用法?Python User.get_or_insert怎么用?Python User.get_or_insert使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类users.User
的用法示例。
在下文中一共展示了User.get_or_insert方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: get_or_post
# 需要导入模块: from users import User [as 别名]
# 或者: from users.User import get_or_insert [as 别名]
def get_or_post(self):
requestUrl = (
self.request.environ["wsgi.url_scheme"]
+ "://"
+ self.request.environ["HTTP_HOST"]
+ self.request.environ["PATH_INFO"]
+ "?"
+ self.request.environ["QUERY_STRING"]
)
idpPostBodyIO = self.request.environ["wsgi.input"]
postBody = idpPostBodyIO.read()
# postBody = self.request.body
if postBody == "":
logging.warn("The callback request body is empty.")
response = self.verify(requestUrl, postBody)
if response:
logging.info("Federated login success!")
openid_values = self.get_openid_values(response)
self.render_gitkit(openid_values)
# fed_id changes (in gmail anyway) - use email for keyname...
user = User.get_or_insert(
openid_values.get("email"),
display_name=openid_values.get("display_name"),
fed_identity=openid_values.get("fed_identity"),
fed_provider=openid_values.get("fed_provider"),
photo_url=openid_values.get("photo_url"),
)
# update the photo url, if needs be.
if user.photo_url != openid_values.get("photo_url"):
user.photo_url = openid_values.get("photo_url")
user.put()
user.login()
else:
logging.info("Problem with response from IDP")
示例2: post
# 需要导入模块: from users import User [as 别名]
# 或者: from users.User import get_or_insert [as 别名]
def post(self):
nickname = self.request.get('nickname')
email = self.request.get('email')
password = self.request.get('password')
password2 = self.request.get('password2')
if password2 != password:
self.session.start(None)
self.session[ 'flash_msg' ] = '<p>Password fields did not match.</p>'
self.redirect('/signup')
return
user = User.get_or_insert(nickname=nickname,
email=email,
pwd=salt_n_hash(password),
key_name=nickname)
self.session.start(None)
if not User.authenticate(nickname, password):
self.session[ 'flash_msg' ] = '<p>Sorry, the nickname you chose is already taken.</p>'
self.redirect(self.request.url)
return
id = signup_id(nickname)
signup = UserSignup(user=user, key_name=id)
signup.put()
confirm_url = self.request.relative_url('confirmsignup?id='+id)
logging.info("user:" + nickname + " password:" + password + " confirm_url:" +confirm_url)
from google.appengine.api import mail
#sender = 'Registrar <[email protected]>'
sender = '[email protected]'
subject = 'Confirm your registration'
body = \
'Hello %s,\n\n' % nickname + \
'To confirm your registration, please visit the link below:\n\n' + \
'<%s>\n' % confirm_url
mail.send_mail( sender, email, subject, body )
self.session['flash_msg'] = \
'<p>Thank you for signing up, %s! A confirmation ' % nickname + \
'message is on its way to your email inbox. It will contain a link ' + \
'which you will need to visit in order to complete your registration.</p>' + \
'<p>See you soon!</p>'
self.redirect('/')