当前位置: 首页>>代码示例>>Python>>正文


Python User.update_login_info方法代码示例

本文整理汇总了Python中app.users.models.User.update_login_info方法的典型用法代码示例。如果您正苦于以下问题:Python User.update_login_info方法的具体用法?Python User.update_login_info怎么用?Python User.update_login_info使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在app.users.models.User的用法示例。


在下文中一共展示了User.update_login_info方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: oauth_callback

# 需要导入模块: from app.users.models import User [as 别名]
# 或者: from app.users.models.User import update_login_info [as 别名]
def oauth_callback(provider):
    if not current_user.is_anonymous():
        return redirect(url_for('simple_page.index'))

    oauth = OAuthSignIn.get_provider(provider)
    social_id, username, email = oauth.callback()
    if social_id is None:
        flash(getttext(u'Authentication failed'), 'danger')
        return redirect(url_for('simple_page.index'))

    # check if user exists and if no creates new
    user = User.query.filter_by(social_id=social_id).first()
    if user is None:
        user = User(
            username=username,
            password='',
            email=email,
            social_id=social_id
        )
        db.session.add(user)
        db.session.commit()

    login_user(user, remember=True)
    user.update_login_info()
    return redirect(url_for('simple_page.index'))
开发者ID:VirrageS,项目名称:przygoda,代码行数:27,代码来源:views.py

示例2: test_add_user_to_database

# 需要导入模块: from app.users.models import User [as 别名]
# 或者: from app.users.models.User import update_login_info [as 别名]
    def test_add_user_to_database(self):
        user = User(username='john', password=generate_password_hash('a'), email='[email protected]')
        db.session.add(user)
        db.session.commit()

        user = User.query.filter_by(username='john').first()
        assert user.id == 1
        assert user.username == 'john'
        assert check_password_hash(user.password, 'a')
        assert user.email == '[email protected]'
        self.assertIn("facebook$" + user.username, user.social_id)
        assert user.registered_on is not None
        assert user.confirmed is False
        assert user.confirmed_on is None
        self.assertTrue(user.first_login is None)
        self.assertTrue(user.last_login is None)
        self.assertFalse(user.is_active_login())

        user.update_login_info()
        login_date = datetime.now()

        self.assertTrue(user.first_login is not None)
        self.assertLess(user.first_login, login_date)
        self.assertTrue(user.last_login is not None)
        self.assertLess(user.last_login, login_date)

        self.assertTrue(user.is_active_login())
        user.last_login = datetime.now() + timedelta(days=-10)
        db.session.add(user)
        db.session.commit()
        self.assertFalse(user.is_active_login())

        # login again
        user.update_login_info()

        self.assertTrue(user.first_login is not None)
        self.assertLess(user.first_login, login_date)
        self.assertTrue(user.last_login is not None)
        self.assertGreater(user.last_login, login_date)

        user_second = User(username='johner', password=generate_password_hash('a'), email='[email protected]')
        db.session.add(user_second)
        db.session.commit()

        user_second = User.query.filter_by(username='johner').first()
        assert user_second.id == 2
        self.assertEqual(user_second.id, 2)
        self.assertNotEqual(user_second.username, 'john', msg=None)
        self.assertEqual(user_second.username, 'johner')
开发者ID:VirrageS,项目名称:przygoda,代码行数:51,代码来源:test_database.py


注:本文中的app.users.models.User.update_login_info方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。