當前位置: 首頁>>代碼示例>>Python>>正文


Python users.get_current_user方法代碼示例

本文整理匯總了Python中google.appengine.api.users.get_current_user方法的典型用法代碼示例。如果您正苦於以下問題:Python users.get_current_user方法的具體用法?Python users.get_current_user怎麽用?Python users.get_current_user使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在google.appengine.api.users的用法示例。


在下文中一共展示了users.get_current_user方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: get_user_email

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def get_user_email():
  """Retrieves the currently logged in user email.

  Returns:
    A string of the email address of the current user.

  Raises:
    UserNotFound: Raised if a user is not currently logged in.
  """

  try:
    current_user = endpoints.get_current_user() or users.get_current_user()
  except endpoints.InvalidGetUserCall:
    current_user = users.get_current_user()

  if current_user:

    return current_user.email()
  raise UserNotFound('get_user_email failed: No user account detected.') 
開發者ID:google,項目名稱:loaner,代碼行數:21,代碼來源:user.py

示例2: testGetTestSetFromResultString

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def testGetTestSetFromResultString(self):
    current_user = users.get_current_user()
    u = models.user_test.User.get_or_insert(current_user.user_id())
    test = models.user_test.Test(user=u, name='Fake Test',
                                 url='http://fakeurl.com/test.html',
                                 description='stuff')
    test.save()

    results_str = 'test_1=0,test_2=1'
    test_set_category = 'usertest_%s' % test.key()
    test_set = models.user_test.Test.get_test_set_from_results_str(
        test_set_category, results_str)
    self.assertTrue(test_set != None)
    self.assertEqual(test_set.category, test_set_category)
    self.assertEqual(len(test_set.tests), 2)
    self.assertEqual('test_1', test_set.tests[0].key)
    self.assertEqual('test_2', test_set.tests[1].key) 
開發者ID:elsigh,項目名稱:browserscope,代碼行數:19,代碼來源:test_user_tests.py

示例3: get

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def get(self):
        user = users.get_current_user()
        username = user.nickname()
        
        items = Matrix.all()
        for item in items:
            logging.info('item key %s blob_key %s, filename %s ', item.key.urlsafe(), item.file_key, item.filename)
        length = len(items)
        upload_url = blobstore.create_upload_url("/test_upload_blob")

        self.response.out.write(self.template_env.get_template("blobs.html").render(
            {"username": username,
             "items": items,
             "length": length,
             "upload_url": upload_url,
             "top_form_url": "test_db_datastore"})) 
開發者ID:singhj,項目名稱:locality-sensitive-hashing,代碼行數:18,代碼來源:test_db_datastore.py

示例4: get

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def get(self):
        logging.info(os.path.abspath(os.path.curdir))
        logging.info('Peer Belt Driver get method called!')
        user = users.get_current_user()
        username = user.nickname()

        results = BlobDataset.query()
        items = [result for result in results]

        for item in items:
            item.ds_key = item.key.urlsafe()
        length = len(items)

        upload_url = create_upload_url("upload_blob2")

        self.response.out.write(self.template_env.get_template("blobs2.html").render(
            {"username": username,
             "items": items,
             "length": length,
             "upload_url": upload_url})) 
開發者ID:singhj,項目名稱:locality-sensitive-hashing,代碼行數:22,代碼來源:peer_belt_driver.py

示例5: get

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def get(self):
        user = users.get_current_user()
        username = user.nickname()

        items = DatasetPB.all()
#         items = [result for result in results.fetch(10)]
#         for item in items:
#             logging.info('fn %s', item.blob_key)
        length = len(items)
        upload_url = blobstore.create_upload_url("/upload_blob")
        
#         Datazz.create(u'fn1', 'ol1')
#         Datazz.all()
#         Datazz.create('fn1', 'ol2')
#         Datazz.create('fn2', 'ol3')
#         Datazz.all()

        self.response.out.write(self.template_env.get_template("blobs.html").render(
            {"username": username,
             "items": items,
             "length": length,
             "upload_url": upload_url,
             "top_form_url": "blobs"})) 
開發者ID:singhj,項目名稱:locality-sensitive-hashing,代碼行數:25,代碼來源:blobs.py

示例6: post

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def post(self):
        source = "uploaded by user"
        upload_files = self.get_uploads("file")
        blob_key = upload_files[0].key()
        name = self.request.get("name")

        user = users.get_current_user()

        username = user.nickname()
        date = datetime.datetime.now()
        str_blob_key = str(blob_key)
        key = FileMetadata.getKeyName(username, date, str_blob_key)

        m = FileMetadata(key_name = key)
        m.owner = user
        m.filename = name
        m.uploadedOn = date
        m.source = source
        m.blobkey = str_blob_key
        m.put()

        self.redirect("/mr") 
開發者ID:singhj,項目名稱:locality-sensitive-hashing,代碼行數:24,代碼來源:mr_main.py

示例7: post

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def post(self):
        user = users.get_current_user()
        if not user:
            # This should never happen, as AppEngine should only run this
            # handler if the user is signed in.  But defense in depth applies...
            self.redirect(users.create_login_url(self.request.uri))
            return

        older_than_id = self.request.get('older_than')
        older_than = datetime.datetime.strptime(older_than_id,
                                                "%Y-%m-%dT%H:%M:%S.%f")

        query = Message.query(ancestor=messages_key()).filter(Message.date <
                                                              older_than
        ).order(-Message.date)
        # Limit query to 50 messages:
        query_results = query.fetch(50)

        if len(query_results) > 0:
            broadcast = MessagesBroadcast(query_results)
            broadcast.send_messages(user.user_id()) 
開發者ID:colohan,項目名稱:dschat,代碼行數:23,代碼來源:dschat.py

示例8: _SafelyGetCurrentUserEmail

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def _SafelyGetCurrentUserEmail():
  """Retrieve the current user's email or raise an exception.

  We set 'login: required' in app.yaml so all users should be logged-in.
  But, is has been observed that users.get_current_user() *can* return None.
  Therefore, this must be checked.

  Returns:
    String email address of the currently logged-in user.

  Raises:
    MessageRecallAuthenticationError: If current user is noticed as None.
  """
  user = None
  get_user_attempts = 0
  while not user and get_user_attempts < _GET_USER_MAX_RETRIES:
    user = users.get_current_user()
    get_user_attempts += 1
  if not user:
    raise recall_errors.MessageRecallAuthenticationError(
        'A logged-in user was not retrieved. Please try again.')
  return user.email() 
開發者ID:google,項目名稱:googleapps-message-recall,代碼行數:24,代碼來源:frontend_views.py

示例9: get

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def get(self):
    user = users.get_current_user()
    if not user:
      self.redirect(users.create_login_url('/account'))
      return
    email = user.email()
    action = 'Create'
    account, nickname = yield (get_account(user.user_id()),
                               get_nickname(user.user_id()))
    if account is not None:
      action = 'Update'
    if account:
      proposed_nickname = account.nickname or account.email
    else:
      proposed_nickname = email
    values = {'email': email,
              'nickname': nickname,
              'proposed_nickname': proposed_nickname,
              'login': users.create_login_url('/home'),
              'logout': users.create_logout_url('/home'),
              'action': action,
              }
    self.response.out.write(ACCOUNT_PAGE % values) 
開發者ID:GoogleCloudPlatform,項目名稱:datastore-ndb-python,代碼行數:25,代碼來源:main.py

示例10: post

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def post(self):
    # TODO: XSRF protection.
    @ndb.tasklet
    def helper():
      user = users.get_current_user()
      if not user:
        self.redirect(users.create_login_url('/account'))
        return
      account = yield get_account(user.user_id())
      if self.request.get('delete'):
        if account:
          yield account.key.delete_async()
        self.redirect('/account')
        return
      if not account:
        account = Account(key=account_key(user.user_id()),
                          email=user.email(), userid=user.user_id())
      nickname = self.request.get('nickname')
      if nickname:
        account.nickname = nickname
      yield account.put_async()
      self.redirect('/account')
    yield ndb.transaction_async(helper) 
開發者ID:GoogleCloudPlatform,項目名稱:datastore-ndb-python,代碼行數:25,代碼來源:main.py

示例11: post

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def post(self):
    """Handle post request."""
    template_values = {
        'back_url': '/showCredentials',
        'back_msg': 'View Credentials',
        'logout_url': users.create_logout_url('/'),
        'user_nickname': users.get_current_user().nickname()
    }
    try:
      UpdateUserCredentials(self.request.get('client_id'),
                            self.request.get('client_secret'),
                            self.request.get('refresh_token'),
                            self.request.get('adwords_manager_cid'),
                            self.request.get('dev_token'))
      self.redirect('/showCredentials')
    except Exception as e:
      template_values['error'] = str(e)
      # Use template to write output to the page.
      path = os.path.join(os.path.dirname(__file__),
                          '../templates/base_template.html')
      self.response.out.write(template.render(path, template_values)) 
開發者ID:googleads,項目名稱:googleads-python-lib,代碼行數:23,代碼來源:update_credentials_view.py

示例12: InitUser

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def InitUser():
  """Initialize application user.

  Retrieve existing user credentials from datastore or add new user.

  Returns:
    AppUser instance of the application user.
  """
  result = AppUser.query(AppUser.user == users.get_current_user()).fetch()

  if result:
    app_user = result[0]
  else:
    app_user = AppUser(user=users.get_current_user(),
                       email=users.get_current_user().email())
    app_user.put()

  return app_user 
開發者ID:googleads,項目名稱:googleads-python-lib,代碼行數:20,代碼來源:ndb_handler.py

示例13: UpdateUserCredentials

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def UpdateUserCredentials(client_id, client_secret, refresh_token,
                          adwords_manager_cid, developer_token):
  """Update the credentials associated with application user.

  Args:
    client_id: str Client Id retrieved from the developer's console.
    client_secret: str Client Secret retrieved from the developer's console.
    refresh_token: str Refresh token generated with the above client id/secret.
    adwords_manager_cid: str Customer Id for the AdWords manager account.
    developer_token: str Developer Token for the AdWords account.
  """
  app_user = AppUser.query(AppUser.user == users.get_current_user()).fetch()[0]

  app_user.client_id = client_id
  app_user.client_secret = client_secret
  app_user.refresh_token = refresh_token
  app_user.adwords_manager_cid = adwords_manager_cid
  app_user.developer_token = developer_token

  app_user.put() 
開發者ID:googleads,項目名稱:googleads-python-lib,代碼行數:22,代碼來源:ndb_handler.py

示例14: test_opened

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def test_opened(app, monkeypatch):
    with mock.patch(
        "google.auth.transport.requests.AuthorizedSession.request", autospec=True
    ) as auth_session:
        data = {'access_token': '123'}
        auth_session.return_value = MockResponse(data, http_client.OK)
        firetactoe.Game(id='razem', userX=users.get_current_user()).put()

        app.post('/opened?g=razem', status=200)

        auth_session.assert_called_once_with(
            mock.ANY,  # AuthorizedSession object
            method="PATCH",
            url="http://firebase.com/test-db-url/channels/38razem.json",
            body='{"winner": null, "userX": "38", "moveX": null, "winningBoard": null, "board": null, "userO": null}',
            data=None,
        ) 
開發者ID:GoogleCloudPlatform,項目名稱:python-docs-samples,代碼行數:19,代碼來源:firetactoe_test.py

示例15: test_move

# 需要導入模塊: from google.appengine.api import users [as 別名]
# 或者: from google.appengine.api.users import get_current_user [as 別名]
def test_move(app, monkeypatch):
    with mock.patch(
        "google.auth.transport.requests.AuthorizedSession.request", autospec=True
    ) as auth_session:
        data = {'access_token': '123'}
        auth_session.return_value = MockResponse(data, http_client.OK)

        firetactoe.Game(
            id='razem', userX=users.get_current_user(), board=9*' ',
            moveX=True).put()

        app.post('/move?g=razem', {'i': 0}, status=200)

        game = ndb.Key('Game', 'razem').get()
        assert game.board == 'X' + (8 * ' ')

        auth_session.assert_called_once_with(
            mock.ANY,  # AuthorizedSession object
            method="PATCH",
            url="http://firebase.com/test-db-url/channels/38razem.json",
            body='{"winner": null, "userX": "38", "moveX": false, "winningBoard": null, "board": "X        ", "userO": null}',
            data=None,
        ) 
開發者ID:GoogleCloudPlatform,項目名稱:python-docs-samples,代碼行數:25,代碼來源:firetactoe_test.py


注:本文中的google.appengine.api.users.get_current_user方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。