Skip to content

Crash when attribute on item not set. #29

@shylux

Description

@shylux

Helper are called with none values.
Happened when tried to display effective_date. Since effective_date is not required in plone it can be null.

Traceback (innermost last):
  Module ZPublisher.Publish, line 138, in publish
  Module ZPublisher.mapply, line 77, in mapply
  Module ZPublisher.Publish, line 48, in call_object
  Module ftw.tabbedview.browser.tabbed, line 152, in listing
  Module ftw.tabbedview.browser.listing, line 134, in __call__
  Module Products.Five.browser.pagetemplatefile, line 125, in __call__
  Module Products.Five.browser.pagetemplatefile, line 59, in __call__
  Module zope.pagetemplate.pagetemplate, line 132, in pt_render
  Module zope.pagetemplate.pagetemplate, line 240, in __call__
  Module zope.tal.talinterpreter, line 271, in __call__
  Module zope.tal.talinterpreter, line 343, in interpret
  Module zope.tal.talinterpreter, line 531, in do_optTag_tal
  Module zope.tal.talinterpreter, line 513, in no_tag
  Module zope.tal.talinterpreter, line 343, in interpret
  Module zope.tal.talinterpreter, line 852, in do_condition
  Module zope.tal.talinterpreter, line 343, in interpret
  Module zope.tal.talinterpreter, line 533, in do_optTag_tal
  Module zope.tal.talinterpreter, line 518, in do_optTag
  Module zope.tal.talinterpreter, line 513, in no_tag
  Module zope.tal.talinterpreter, line 343, in interpret
  Module zope.tal.talinterpreter, line 533, in do_optTag_tal
  Module zope.tal.talinterpreter, line 522, in do_optTag
  Module zope.tal.talinterpreter, line 343, in interpret
  Module zope.tal.talinterpreter, line 852, in do_condition
  Module zope.tal.talinterpreter, line 343, in interpret
  Module zope.tal.talinterpreter, line 533, in do_optTag_tal
  Module zope.tal.talinterpreter, line 518, in do_optTag
  Module zope.tal.talinterpreter, line 513, in no_tag
  Module zope.tal.talinterpreter, line 343, in interpret
  Module zope.tal.talinterpreter, line 742, in do_insertStructure_tal
  Module Products.PageTemplates.Expressions, line 218, in evaluateStructure
  Module zope.tales.tales, line 696, in evaluate
   - URL: /Users/lukas/projects/ftw.workspace/ftw/workspace/browser/documents.pt
   - Line 46, Column 24
   - Expression: <PathExpr standard:u'view/render_listing'>
   - Names:
      {'args': (),
       'container': <Workspace at /Plone/workspace>,
       'context': <Workspace at /Plone/workspace>,
       'default': <object object at 0x100d7dbb0>,
       'here': <Workspace at /Plone/workspace>,
       'loop': {},
       'nothing': None,
       'options': {},
       'repeat': <Products.PageTemplates.Expressions.SafeMapping object at 0x105705470>,
       'request': <HTTPRequest, URL=http://localhost:8080/Plone/workspace/tabbed_view/listing>,
       'root': <Application at >,
       'template': <Products.Five.browser.pagetemplatefile.ViewPageTemplateFile object at 0x1045aecd0>,
       'traverse_subpath': [],
       'user': <PropertiedUser 'admin'>,
       'view': <Products.Five.metaclass.DocumentsTab object at 0x1015185d0>,
       'views': <Products.Five.browser.pagetemplatefile.ViewMapper object at 0x1015f1610>}
  Module zope.tales.expressions, line 217, in __call__
  Module Products.PageTemplates.Expressions, line 155, in _eval
  Module Products.PageTemplates.Expressions, line 117, in render
  Module ftw.tabbedview.browser.listing, line 274, in render_listing
  Module ftw.table.utils, line 76, in generate
  Module Products.Five.browser.pagetemplatefile, line 125, in __call__
  Module Products.Five.browser.pagetemplatefile, line 59, in __call__
  Module zope.pagetemplate.pagetemplate, line 132, in pt_render
  Module zope.pagetemplate.pagetemplate, line 240, in __call__
  Module zope.tal.talinterpreter, line 271, in __call__
  Module zope.tal.talinterpreter, line 343, in interpret
  Module zope.tal.talinterpreter, line 821, in do_loop_tal
  Module zope.tal.talinterpreter, line 343, in interpret
  Module zope.tal.talinterpreter, line 821, in do_loop_tal
  Module zope.tal.talinterpreter, line 343, in interpret
  Module zope.tal.talinterpreter, line 531, in do_optTag_tal
  Module zope.tal.talinterpreter, line 513, in no_tag
  Module zope.tal.talinterpreter, line 343, in interpret
  Module zope.tal.talinterpreter, line 742, in do_insertStructure_tal
  Module Products.PageTemplates.Expressions, line 218, in evaluateStructure
  Module zope.tales.tales, line 696, in evaluate
   - URL: /Users/lukas/projects/ftw.workspace/src/ftw.table/ftw/table/templates/basic.pt
   - Line 20, Column 16
   - Expression: <PythonExpr ( view.get_value(content, col))>
   - Names:
      {'args': (<ftw.table.utils.TableGenerator object at 0x10496b250>,),
       'container': None,
       'context': None,
       'default': <object object at 0x100d7dbb0>,
       'here': None,
       'loop': {},
       'nothing': None,
       'options': {},
       'repeat': <Products.PageTemplates.Expressions.SafeMapping object at 0x1057054c8>,
       'request': <HTTPRequest, URL=http://localhost:8080/Plone/workspace/tabbed_view/listing>,
       'root': None,
       'template': <Products.Five.browser.pagetemplatefile.ViewPageTemplateFile object at 0x1044f3150>,
       'traverse_subpath': [],
       'user': <PropertiedUser 'admin'>,
       'view': <ftw.table.utils.TableGenerator object at 0x10496b250>,
       'views': <Products.Five.browser.pagetemplatefile.ViewMapper object at 0x1015ab4d0>}
  Module zope.tales.pythonexpr, line 59, in __call__
   - __traceback_info__: ( view.get_value(content, col))
  Module <string>, line 1, in <module>
  Module ftw.table.utils, line 212, in get_value
  Module ftw.table.helper, line 179, in readable_date_text
  Module DateTime.DateTime, line 1551, in strftime
ValueError: year=1000 is before 1900; the datetime strftime() methods require year >= 1900

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions