本文整理汇总了Python中zope.annotation.IAnnotations.next_incremental_number方法的典型用法代码示例。如果您正苦于以下问题:Python IAnnotations.next_incremental_number方法的具体用法?Python IAnnotations.next_incremental_number怎么用?Python IAnnotations.next_incremental_number使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类zope.annotation.IAnnotations
的用法示例。
在下文中一共展示了IAnnotations.next_incremental_number方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __call__
# 需要导入模块: from zope.annotation import IAnnotations [as 别名]
# 或者: from zope.annotation.IAnnotations import next_incremental_number [as 别名]
def __call__(self):
form = self.request.form
context = aq_inner(self.context)
annotations = IAnnotations(context)['collective.pfg.payment']
if form.get("form.button.UpdateNumber", None) is not None:
sdm = getToolByName(context, 'session_data_manager')
session = sdm.getSessionData(create=False)
if session is not None:
if session.get('collective.pfg.payment.number', None) is not None:
del session['collective.pfg.payment.number']
re = getUtility(IRegularExpression)
numbering_type = form.get('numbering_type')
if numbering_type == 'Incremental':
annotations.numbering_type = 'Incremental'
next_incremental_number = form.get('next_incremental_number', None)
if re.integer(next_incremental_number):
annotations.next_incremental_number = int(next_incremental_number)
else:
message = _(u"Please input integer number for the incremental number.")
IStatusMessage(self.request).addStatusMessage(message, type='warn')
elif numbering_type == 'Random':
annotations.numbering_type = 'Random'
random_number_digits = form.get('random_number_digits', None)
if re.integer(random_number_digits):
annotations.random_number_digits = int(random_number_digits)
else:
message = _(u"Please input integer number for the randome digits.")
IStatusMessage(self.request).addStatusMessage(message, type='warn')
return self.template()
示例2: number
# 需要导入模块: from zope.annotation import IAnnotations [as 别名]
# 或者: from zope.annotation.IAnnotations import next_incremental_number [as 别名]
def number(self):
context = aq_inner(self.context)
parent = aq_parent(context)
if IAnnotations(parent).get('collective.pfg.payment') is not None:
annotations = IAnnotations(parent)['collective.pfg.payment']
sdm = getToolByName(context, 'session_data_manager')
session = sdm.getSessionData(create=True)
number = session.get('collective.pfg.payment.number', None)
if number is None:
if annotations.numbering_type == 'Incremental':
number = annotations.next_incremental_number
new_number = number + 1
annotations.next_incremental_number = new_number
number = str(number)
if annotations.numbering_type == 'Random':
digits = annotations.random_number_digits
ids = annotations.numbers
rd = getUtility(IRandomDigits)
number = rd(digits, ids)
annotations.numbers.append(number)
session.set('collective.pfg.payment.number', number)
return number