Not possible to delete a section schedule

Bug #1336578 reported by Douglas Cerna on 2014-07-01
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
SchoolTool
High
Douglas Cerna

Bug Description

2014-07-01 17:44:50,228 http://manager:7080/schoolyears/2014/2014/sections/1/schedule/SelectedPeriodsSchedule/delete.html
Traceback (most recent call last):
  File "/home/replaceafill/.buildout/eggs/zope.publisher-3.12.6-py2.7.egg/zope/publisher/publish.py", line 132, in publish
    result = publication.callObject(request, obj)
  File "/home/replaceafill/.buildout/eggs/zope.app.publication-3.14.0-py2.7.egg/zope/app/publication/zopepublication.py", line 205, in callObject
    return mapply(ob, request.getPositionalArguments(), request)
  File "/home/replaceafill/.buildout/eggs/zope.publisher-3.12.6-py2.7.egg/zope/publisher/publish.py", line 107, in mapply
    return debug_call(obj, args)
  File "/home/replaceafill/.buildout/eggs/zope.publisher-3.12.6-py2.7.egg/zope/publisher/publish.py", line 113, in debug_call
    return obj(*args)
  File "/home/replaceafill/dev/sandboxes/demo/schooltool/src/schooltool/skin/flourish/form.py", line 118, in __call__
    result = super(Dialog, self).__call__(*args, **kw)
  File "/home/replaceafill/dev/sandboxes/demo/schooltool/src/schooltool/skin/flourish/page.py", line 69, in __call__
    result = self.render(*args, **kw)
  File "/home/replaceafill/.buildout/eggs/z3c.form-2.9.1-py2.7.egg/z3c/form/form.py", line 159, in render
    return self.template()
  File "/home/replaceafill/.buildout/eggs/zope.browserpage-4.0.0-py2.7.egg/zope/browserpage/viewpagetemplatefile.py", line 81, in __call__
    return self.im_func(im_self, *args, **kw)
  File "/home/replaceafill/.buildout/eggs/zope.browserpage-4.0.0-py2.7.egg/zope/browserpage/viewpagetemplatefile.py", line 49, in __call__
    sourceAnnotations=getattr(debug_flags, 'sourceAnnotations', 0),
  File "/home/replaceafill/.buildout/eggs/zope.pagetemplate-4.0.1-py2.7.egg/zope/pagetemplate/pagetemplate.py", line 132, in pt_render
    strictinsert=0, sourceAnnotations=sourceAnnotations
  File "/home/replaceafill/.buildout/eggs/zope.pagetemplate-4.0.1-py2.7.egg/zope/pagetemplate/pagetemplate.py", line 241, in __call__
    interpreter()
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 271, in __call__
    self.interpret(self.program)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 343, in interpret
    handlers[opcode](self, args)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 710, in do_insertTranslation
    self.interpret(stuff[1])
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 343, in interpret
    handlers[opcode](self, args)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 652, in do_i18nVariable
    self.interpret(program)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 343, in interpret
    handlers[opcode](self, args)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 533, in do_optTag_tal
    self.do_optTag(stuff)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 518, in do_optTag
    return self.no_tag(start, program)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 513, in no_tag
    self.interpret(program)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 343, in interpret
    handlers[opcode](self, args)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 742, in do_insertStructure_tal
    structure = self.engine.evaluateStructure(expr)
  File "/home/replaceafill/.buildout/eggs/zope.tales-3.5.3-py2.7.egg/zope/tales/tales.py", line 696, in evaluate
    return expression(self)
  File "/home/replaceafill/.buildout/eggs/zope.tales-3.5.3-py2.7.egg/zope/tales/expressions.py", line 217, in __call__
    return self._eval(econtext)
  File "/home/replaceafill/.buildout/eggs/zope.tales-3.5.3-py2.7.egg/zope/tales/expressions.py", line 194, in _eval
    ob = self._subexprs[-1](econtext)
  File "/home/replaceafill/.buildout/eggs/zope.tales-3.5.3-py2.7.egg/zope/tales/expressions.py", line 124, in _eval
    ob = self._traverser(ob, element, econtext)
  File "/home/replaceafill/.buildout/eggs/zope.pagetemplate-4.0.1-py2.7.egg/zope/pagetemplate/engine.py", line 66, in __call__
    request=request)
  File "/home/replaceafill/.buildout/eggs/zope.traversing-3.14.0-py2.7.egg/zope/traversing/adapters.py", line 136, in traversePathElement
    return traversable.traverse(nm, further_path)
  File "/home/replaceafill/.buildout/eggs/zope.traversing-3.14.0-py2.7.egg/zope/traversing/adapters.py", line 42, in traverse
    attr = getattr(subject, name, _marker)
  File "/home/replaceafill/dev/sandboxes/demo/schooltool/src/schooltool/timetable/browser/timetable.py", line 862, in owner
    return IHaveSchedule(self.context)
TypeError: ('Could not adapt', <schooltool.timetable.timetable.SelectedPeriodsSchedule object at 0x2ad0e8f79a28>, <InterfaceClass schooltool.timetable.interfaces.IHaveSchedule>)
2014-07-01 17:44:50,263 http://manager:7080/schoolyears/2014/2014/sections/1/schedule/SelectedPeriodsSchedule/delete.html
Traceback (most recent call last):
  File "/home/replaceafill/.buildout/eggs/zope.publisher-3.12.6-py2.7.egg/zope/publisher/publish.py", line 132, in publish
    result = publication.callObject(request, obj)
  File "/home/replaceafill/.buildout/eggs/zope.app.publication-3.14.0-py2.7.egg/zope/app/publication/zopepublication.py", line 205, in callObject
    return mapply(ob, request.getPositionalArguments(), request)
  File "/home/replaceafill/.buildout/eggs/zope.publisher-3.12.6-py2.7.egg/zope/publisher/publish.py", line 107, in mapply
    return debug_call(obj, args)
  File "/home/replaceafill/.buildout/eggs/zope.publisher-3.12.6-py2.7.egg/zope/publisher/publish.py", line 113, in debug_call
    return obj(*args)
  File "/home/replaceafill/dev/sandboxes/demo/schooltool/src/schooltool/skin/flourish/form.py", line 118, in __call__
    result = super(Dialog, self).__call__(*args, **kw)
  File "/home/replaceafill/dev/sandboxes/demo/schooltool/src/schooltool/skin/flourish/page.py", line 69, in __call__
    result = self.render(*args, **kw)
  File "/home/replaceafill/.buildout/eggs/z3c.form-2.9.1-py2.7.egg/z3c/form/form.py", line 159, in render
    return self.template()
  File "/home/replaceafill/.buildout/eggs/zope.browserpage-4.0.0-py2.7.egg/zope/browserpage/viewpagetemplatefile.py", line 81, in __call__
    return self.im_func(im_self, *args, **kw)
  File "/home/replaceafill/.buildout/eggs/zope.browserpage-4.0.0-py2.7.egg/zope/browserpage/viewpagetemplatefile.py", line 49, in __call__
    sourceAnnotations=getattr(debug_flags, 'sourceAnnotations', 0),
  File "/home/replaceafill/.buildout/eggs/zope.pagetemplate-4.0.1-py2.7.egg/zope/pagetemplate/pagetemplate.py", line 132, in pt_render
    strictinsert=0, sourceAnnotations=sourceAnnotations
  File "/home/replaceafill/.buildout/eggs/zope.pagetemplate-4.0.1-py2.7.egg/zope/pagetemplate/pagetemplate.py", line 241, in __call__
    interpreter()
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 271, in __call__
    self.interpret(self.program)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 343, in interpret
    handlers[opcode](self, args)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 710, in do_insertTranslation
    self.interpret(stuff[1])
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 343, in interpret
    handlers[opcode](self, args)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 652, in do_i18nVariable
    self.interpret(program)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 343, in interpret
    handlers[opcode](self, args)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 533, in do_optTag_tal
    self.do_optTag(stuff)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 518, in do_optTag
    return self.no_tag(start, program)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 513, in no_tag
    self.interpret(program)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 343, in interpret
    handlers[opcode](self, args)
  File "/home/replaceafill/.buildout/eggs/zope.tal-3.5.2-py2.7.egg/zope/tal/talinterpreter.py", line 742, in do_insertStructure_tal
    structure = self.engine.evaluateStructure(expr)
  File "/home/replaceafill/.buildout/eggs/zope.tales-3.5.3-py2.7.egg/zope/tales/tales.py", line 696, in evaluate
    return expression(self)
  File "/home/replaceafill/.buildout/eggs/zope.tales-3.5.3-py2.7.egg/zope/tales/expressions.py", line 217, in __call__
    return self._eval(econtext)
  File "/home/replaceafill/.buildout/eggs/zope.tales-3.5.3-py2.7.egg/zope/tales/expressions.py", line 194, in _eval
    ob = self._subexprs[-1](econtext)
  File "/home/replaceafill/.buildout/eggs/zope.tales-3.5.3-py2.7.egg/zope/tales/expressions.py", line 124, in _eval
    ob = self._traverser(ob, element, econtext)
  File "/home/replaceafill/.buildout/eggs/zope.pagetemplate-4.0.1-py2.7.egg/zope/pagetemplate/engine.py", line 66, in __call__
    request=request)
  File "/home/replaceafill/.buildout/eggs/zope.traversing-3.14.0-py2.7.egg/zope/traversing/adapters.py", line 136, in traversePathElement
    return traversable.traverse(nm, further_path)
  File "/home/replaceafill/.buildout/eggs/zope.traversing-3.14.0-py2.7.egg/zope/traversing/adapters.py", line 42, in traverse
    attr = getattr(subject, name, _marker)
  File "/home/replaceafill/dev/sandboxes/demo/schooltool/src/schooltool/timetable/browser/timetable.py", line 862, in owner
    return IHaveSchedule(self.context)
TypeError: ('Could not adapt', <schooltool.timetable.timetable.SelectedPeriodsSchedule object at 0x2ad0e8f79a28>, <InterfaceClass schooltool.timetable.interfaces.IHaveSchedule>)

Changed in schooltool:
status: New → Triaged
importance: Undecided → High
assignee: nobody → Douglas Cerna (replaceafill)
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers