documentation icon indicating copy to clipboard operation
documentation copied to clipboard

Docs on setting the modification date

Open zopyx opened this issue 8 years ago • 3 comments

The documentation

https://5.docs.plone.org/develop/plone/content/timestamps.html#setting-modification-date-explicitly

is in general right but in reality it is wrong.

You usually need to call reindexObject() for object updates. And reindexObject() implicitly triggers an update of the modification_date property with the current timestamp. So it seems to be impossible to explicitly set the modification date.

  /home/vmadmin/share-migration/eggs/zope.component-3.12.1-py2.7.egg/zope/component/_api.py(136)subscribers()
-> return sitemanager.subscribers(objects, interface)
  /home/vmadmin/share-migration/eggs/zope.interface-4.2.0-py2.7-linux-x86_64.egg/zope/interface/registry.py(328)subscribers()
-> return self.adapters.subscribers(objects, provided)
  /home/vmadmin/share-migration/eggs/zope.interface-4.2.0-py2.7-linux-x86_64.egg/zope/interface/adapter.py(596)subscribers()
-> subscription(*objects)
  /home/vmadmin/share-migration/eggs/zope.component-3.12.1-py2.7.egg/zope/component/event.py(32)objectEventNotify()
-> zope.component.subscribers((event.object, event), None)
  /home/vmadmin/share-migration/eggs/zope.component-3.12.1-py2.7.egg/zope/component/_api.py(136)subscribers()
-> return sitemanager.subscribers(objects, interface)
  /home/vmadmin/share-migration/eggs/zope.interface-4.2.0-py2.7-linux-x86_64.egg/zope/interface/registry.py(328)subscribers()
-> return self.adapters.subscribers(objects, provided)
  /home/vmadmin/share-migration/eggs/zope.interface-4.2.0-py2.7-linux-x86_64.egg/zope/interface/adapter.py(596)subscribers()
-> subscription(*objects)
  /home/vmadmin/share-migration/eggs/plone.dexterity-2.5.1-py2.7.egg/plone/dexterity/content.py(784)reindexOnModify()
-> content.reindexObject()
  /home/vmadmin/share-migration/eggs/Products.CMFCore-2.2.11-py2.7.egg/Products/CMFCore/CMFCatalogAware.py(85)reindexObject()
-> self.notifyModified()
  /home/vmadmin/share-migration/eggs/plone.dexterity-2.5.1-py2.7.egg/plone/dexterity/content.py(381)notifyModified()
-> self.setModificationDate()
> /home/vmadmin/share-migration/eggs/plone.dexterity-2.5.1-py2.7.egg/plone/dexterity/content.py(405)setModificationDate()
-> self.modification_date = DateTime()

zopyx avatar Oct 30 '17 09:10 zopyx