本文整理汇总了Python中weblate.accounts.captcha.MathCaptcha.from_hash方法的典型用法代码示例。如果您正苦于以下问题:Python MathCaptcha.from_hash方法的具体用法?Python MathCaptcha.from_hash怎么用?Python MathCaptcha.from_hash使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类weblate.accounts.captcha.MathCaptcha
的用法示例。
在下文中一共展示了MathCaptcha.from_hash方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_object
# 需要导入模块: from weblate.accounts.captcha import MathCaptcha [as 别名]
# 或者: from weblate.accounts.captcha.MathCaptcha import from_hash [as 别名]
def test_object(self):
captcha = MathCaptcha('1 * 2')
self.assertFalse(
captcha.validate(1)
)
self.assertTrue(
captcha.validate(2)
)
restored = MathCaptcha.from_hash(captcha.hashed)
self.assertEqual(
captcha.question,
restored.question
)
with self.assertRaises(ValueError):
MathCaptcha.from_hash(captcha.hashed[:40])
示例2: __init__
# 需要导入模块: from weblate.accounts.captcha import MathCaptcha [as 别名]
# 或者: from weblate.accounts.captcha.MathCaptcha import from_hash [as 别名]
def __init__(self, data=None, *args, **kwargs):
super(CaptchaRegistrationForm, self).__init__(
data,
*args,
**kwargs
)
# Load data
self.tampering = False
if data is None or 'captcha_id' not in data:
self.captcha = MathCaptcha()
else:
try:
self.captcha = MathCaptcha.from_hash(data['captcha_id'])
except ValueError:
self.captcha = MathCaptcha()
self.tampering = True
# Set correct label
self.fields['captcha'].label = pgettext(
'Question for a mathematics-based CAPTCHA, '
'the %s is an arithmetic problem',
'What is %s?'
) % self.captcha.display
self.fields['captcha_id'].initial = self.captcha.hashed
示例3: __init__
# 需要导入模块: from weblate.accounts.captcha import MathCaptcha [as 别名]
# 或者: from weblate.accounts.captcha.MathCaptcha import from_hash [as 别名]
def __init__(self, request, data=None, *args, **kwargs):
super(CaptchaForm, self).__init__(data, *args, **kwargs)
self.fresh = False
if (data is None or
'captcha_id' not in data or
'captcha' not in request.session or
data['captcha_id'] not in request.session['captcha']):
self.captcha = MathCaptcha()
self.fresh = True
request.session['captcha'] = {self.captcha.id: self.captcha.hashed}
else:
captcha_id = data['captcha_id']
self.captcha = MathCaptcha.from_hash(
request.session['captcha'].pop(captcha_id),
captcha_id
)
# Set correct label
self.fields['captcha'].label = pgettext(
'Question for a mathematics-based CAPTCHA, '
'the %s is an arithmetic problem',
'What is %s?'
) % self.captcha.display
self.fields['captcha_id'].initial = self.captcha.id
示例4: __init__
# 需要导入模块: from weblate.accounts.captcha import MathCaptcha [as 别名]
# 或者: from weblate.accounts.captcha.MathCaptcha import from_hash [as 别名]
def __init__(self, request, form=None, data=None, *args, **kwargs):
super(CaptchaForm, self).__init__(data, *args, **kwargs)
self.fresh = False
self.request = request
self.form = form
if data is None or 'captcha' not in request.session:
self.generate_captcha()
self.fresh = True
else:
self.captcha = MathCaptcha.from_hash(
request.session.pop('captcha')
)
示例5: __init__
# 需要导入模块: from weblate.accounts.captcha import MathCaptcha [as 别名]
# 或者: from weblate.accounts.captcha.MathCaptcha import from_hash [as 别名]
def __init__(self, data=None, *args, **kwargs):
super(CaptchaRegistrationForm, self).__init__(
data,
*args,
**kwargs
)
# Load data
self.tampering = False
if data is None or 'captcha_id' not in data:
self.captcha = MathCaptcha()
else:
try:
self.captcha = MathCaptcha.from_hash(data['captcha_id'])
except ValueError:
self.captcha = MathCaptcha()
self.tampering = True
# Set correct label
self.fields['captcha'].label = _('What is %s?') % self.captcha.display
self.fields['captcha_id'].initial = self.captcha.hashed