本文整理汇总了Python中DateTime.DateTime.millis方法的典型用法代码示例。如果您正苦于以下问题:Python DateTime.millis方法的具体用法?Python DateTime.millis怎么用?Python DateTime.millis使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DateTime.DateTime
的用法示例。
在下文中一共展示了DateTime.millis方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: testY10KDate
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
def testY10KDate(self):
# Comparison of a Y10K date and a Y2K date
dt = DateTime('10213/09/21')
dt1 = DateTime(2000, 1, 1)
dsec = (dt.millis() - dt1.millis()) / 1000.0
ddays = math.floor((dsec / 86400.0) + 0.5)
self.assertEqual(ddays, 3000000, ddays)
示例2: _createOrderId
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
def _createOrderId(self):
"""Creates a new unique order id.
"""
from DateTime import DateTime;
now = DateTime()
return str(now.millis())
示例3: modified
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
def modified(self):
"""Provide a callable to return the modification time of content
items, so stored image scales can be invalidated.
"""
context = aq_base(self.context)
date = DateTime(context._p_mtime)
return date.millis()
示例4: respondentid
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
def respondentid(self):
now=DateTime()
time='%s.%s' % (now.strftime('%Y-%m-%d'), str(now.millis())[7:])
rand=str(random())[2:6]
prefix=''
suffix=''
prefix ="Measurement."
prefix=prefix.lower()
return prefix+time+rand+suffix
示例5: test_cache_hit
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
def test_cache_hit(self):
portal = self.layer['portal']
tomorrow = DateTime() + 1
self.storage.add({'__creator__': 'foo', 'the_text_data': 'foo bar baz',
'__uuid__': 'aaa',
'__cache__': {'the_text_data': {'data': 'In cache we believe',
'timestamp': tomorrow.millis()}}})
output = portal.table_page()
self.assertTrue('In cache we believe' in output)
self.assertFalse('foo bar baz' in output)
示例6: addMail
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
def addMail(self, mailString, force_id=False):
""" Store mail in date based folder archive.
Returns created mail. See IMailingList interface.
"""
archive = aq_get(self, self.getValueFor('storage'), None)
# no archive available? then return immediately
if archive is None:
return None
(header, body) = splitMail(mailString)
# if 'keepdate' is set, get date from mail,
if self.getValueFor('keepdate'):
assert header.get("date") is not None
time = DateTime(header.get("date"))
# ... take our own date, clients are always lying!
else:
time = DateTime()
# now let's create the date-path (yyyy/mm)
year = str(time.year()) # yyyy
month = str(time.mm()) # mm
title = "%s %s"%(time.Month(), year)
# do we have a year folder already?
if not base_hasattr(archive, year):
self.addMailBoxerFolder(archive, year, year, btree=False)
yearFolder=getattr(archive, year)
# do we have a month folder already?
if not base_hasattr(yearFolder, month):
self.addMailBoxerFolder(yearFolder, month, title)
mailFolder=getattr(yearFolder, month)
subject = header.get('subject', 'No Subject')
sender = header.get('from','Unknown')
# search a free id for the mailobject
id = time.millis()
while base_hasattr(mailFolder, str(id)):
if force_id:
raise AssertionError("ID %s already exists on folder %s" % (id, mailFolder))
id = id + 1
id = str(id)
self.addMailBoxerMail(mailFolder, id, sender, subject, time,
mailString)
mailObject = getattr(mailFolder, id)
return mailObject
示例7: generateUniqueId
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
def generateUniqueId(type_name):
"""Tries to generate an unique object id from 'type', timestamp and randomness.
Stolen from CMFPlone/plone_scripts/generateUniqueId.py
"""
now=DateTime()
time='%s.%s' % (now.strftime('%Y-%m-%d'), str(now.millis())[7:])
rand=str(random())[2:6]
prefix=''
suffix=''
if type_name is not None:
prefix = type_name.replace(' ', '_')+'.'
prefix=prefix.lower()
return prefix+time+rand+suffix
示例8: generateUniqueId
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
def generateUniqueId(type_name=None):
"""
Generate an id for the content
This is not the archetype's uid.
"""
from DateTime import DateTime
from random import random
now = DateTime()
time = '%s.%s' % (now.strftime('%Y-%m-%d'), str(now.millis())[7:])
rand = str(random())[2:6]
prefix = ''
suffix = ''
if type_name is not None:
prefix = type_name.replace(' ', '_') + '.'
prefix = prefix.lower()
return prefix + time + rand + suffix
示例9: modified
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
def modified(self):
"""Returns the stored file _p_mtime instead content _p_mtime."""
context = aq_base(self.context)
value = IPrimaryFieldInfo(context).value
date = DateTime(value._p_mtime)
return date.millis()
示例10: TableViewView
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
#.........这里部分代码省略.........
for conf in self.context.getPageColumns():
col_type = conf['type']
if not adapters.get(col_type):
adapters[col_type] = getMultiAdapter((context, request),
IColumnField, name=col_type)
self.last_page_label = self._findLastPageLabel(b_start)
index = b_start
write_attempt_count = 0
for record in storage[b_start:bsize and (b_start+bsize) or None]:
if search:
record = self.storage[record.UID]
if batch and index >= b_start+bsize:
# Ok, in this way we display always bsize rows, not bsize rows of data
# But is enough for now
# BBB: can this be true ever?
break
if record.get('__label__') or getattr(record, 'is_label', False):
rows.append(record.get('__label__') or getattr(record, 'label'))
index += 1
continue
# every row data is a dict with the UID, and a list of data for single cells
row = {'UID': record.get('__uuid__') or record.UID,
'cols': []}
write_attempt = False
for conf in context.getPageColumns():
field = adapters[conf['type']]
field.configuration = conf
# Cache hit
if not ignore_cache and field.cache_time and record.get("__cache__", {}).get(conf['id']) and \
self.now.millis() < record["__cache__"][conf['id']]['timestamp'] + field.cache_time * 1000:
output = record["__cache__"][conf['id']]['data']
logger.debug("Cache hit (%s)" % conf['id'])
# Cache miss
else:
output = field.render_view(record.get(conf['id']), index, storage)
if field.cache_time:
if record.get("__cache__") is None:
record["__cache__"] = PersistentDict()
record["__cache__"][conf['id']] = PersistentDict()
record["__cache__"][conf['id']]['data'] = output
record["__cache__"][conf['id']]['timestamp'] = self.now.millis()
write_attempt = True
logger.debug("Cache miss (%s)" % conf['id'])
row['cols'].append({'content': output,
'classes': 'coltype-%s col-%s' % (self.ploneview.normalizeString(col_type),
self.ploneview.normalizeString(conf['id'])
)})
rows.append(row)
index += 1
if write_attempt:
write_attempt_count += 1
if write_attempt_count and write_attempt_count % 100 == 0:
transaction.savepoint()
logger.debug('Writing to cache fresh data (%d rows done)' % write_attempt_count)
return rows
def batch(self, batch=True, bsize=0, b_start=0):
request = self.request
self.b_start = b_start or request.form.get('b_start') or 0
perform_search = 'searchInTable' in request.form.keys()
bsize = bsize or self.context.getBatchSize() or request.form.get('bsize') or 0
示例11: Script
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
## Script (Python) "generateUniqueId"
##bind container=container
##bind context=context
##bind namespace=
##bind script=script
##bind subpath=traverse_subpath
##parameters=type_name=None
##title=
from DateTime import DateTime
from random import random
now = DateTime()
time = '%s.%s' % (now.strftime('%Y-%m-%d'), str(now.millis())[7:])
rand = str(random())[2:6]
prefix = ''
suffix = ''
if type_name is not None:
prefix = type_name.replace(' ', '_') + '.'
prefix = prefix.lower()
return prefix + time + rand + suffix
示例12: render
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
def render(self):
sm = getSecurityManager()
if not sm.checkPermission('Add portal content', self.context):
raise Unauthorized
data = json_body(self.request)
type_ = data.get('@type', None)
id_ = data.get('id', None)
title = data.get('title', None)
if not type_:
raise BadRequest("Property '@type' is required")
# Disable CSRF protection
if 'IDisableCSRFProtection' in dir(plone.protect.interfaces):
alsoProvides(self.request,
plone.protect.interfaces.IDisableCSRFProtection)
# Generate a temporary id if the id is not given
if not id_:
now = DateTime()
new_id = '%s.%s' % (now.millis(), randint(0, 99999999))
else:
new_id = id_
# Create object
try:
new_id = self.context.invokeFactory(type_, new_id, title=title)
except BadRequest as e:
self.request.response.setStatus(400)
return dict(error=dict(
type='DeserializationError',
message=str(e.message)))
except ValueError as e:
self.request.response.setStatus(400)
return dict(error=dict(
type='DeserializationError',
message=str(e.message)))
# Update fields
obj = self.context[new_id]
deserializer = queryMultiAdapter((obj, self.request),
IDeserializeFromJson)
if deserializer is None:
self.request.response.setStatus(501)
return dict(error=dict(
message='Cannot deserialize type {}'.format(obj.portal_type)))
try:
deserializer(validate_all=True)
except DeserializationError as e:
self.request.response.setStatus(400)
return dict(error=dict(
type='DeserializationError',
message=str(e)))
# Rename if generated id
if not id_:
chooser = INameChooser(self.context)
# INameFromTitle adaptable objects should not get a name
# suggestion. NameChooser would prefer the given name instead of
# the one provided by the INameFromTitle adapter.
name_from_title = INameFromTitle(obj, None)
if name_from_title is None:
name = chooser.chooseName(title, obj)
else:
name = chooser.chooseName(None, obj)
transaction.savepoint(optimistic=True)
self.context.manage_renameObject(new_id, name)
self.request.response.setStatus(201)
self.request.response.setHeader('Location', obj.absolute_url())
return None
示例13: render
# 需要导入模块: from DateTime import DateTime [as 别名]
# 或者: from DateTime.DateTime import millis [as 别名]
def render(self):
data = json_body(self.request)
type_ = data.get('@type', None)
id_ = data.get('id', None)
title = data.get('title', None)
if not type_:
raise BadRequest("Property '@type' is required")
# Disable CSRF protection
if 'IDisableCSRFProtection' in dir(plone.protect.interfaces):
alsoProvides(self.request,
plone.protect.interfaces.IDisableCSRFProtection)
# Generate a temporary id if the id is not given
if not id_:
now = DateTime()
new_id = '{}.{}.{}{:04d}'.format(
type_.lower().replace(' ', '_'),
now.strftime('%Y-%m-%d'),
str(now.millis())[7:],
randint(0, 9999))
else:
new_id = id_
# Create object
try:
new_id = self.context.invokeFactory(type_, new_id, title=title)
except BadRequest as e:
self.request.response.setStatus(400)
return dict(error=dict(
type='DeserializationError',
message=str(e.message)))
except ValueError as e:
self.request.response.setStatus(400)
return dict(error=dict(
type='DeserializationError',
message=str(e.message)))
# Update fields
obj = self.context[new_id]
deserializer = queryMultiAdapter((obj, self.request),
IDeserializeFromJson)
if deserializer is None:
self.request.response.setStatus(501)
return dict(error=dict(
message='Cannot deserialize type {}'.format(obj.portal_type)))
try:
deserializer(validate_all=True)
except DeserializationError as e:
self.request.response.setStatus(400)
return dict(error=dict(
type='DeserializationError',
message=str(e)))
# Rename if generated id
if not id_:
self.rename_object(obj)
self.request.response.setStatus(201)
self.request.response.setHeader('Location', obj.absolute_url())
return None