415 |
415 |
416 def startup_rql(self): |
416 def startup_rql(self): |
417 """return some rql to be executed if the result set is None""" |
417 """return some rql to be executed if the result set is None""" |
418 return self.default_rql |
418 return self.default_rql |
419 |
419 |
|
420 def no_entities(self, **kwargs): |
|
421 """override to display something when no entities were found""" |
|
422 pass |
|
423 |
420 def call(self, **kwargs): |
424 def call(self, **kwargs): |
421 """override call to execute rql returned by the .startup_rql method if |
425 """override call to execute rql returned by the .startup_rql method if |
422 necessary |
426 necessary |
423 """ |
427 """ |
424 rset = self.cw_rset |
428 rset = self.cw_rset |
425 if rset is None: |
429 if rset is None: |
426 rset = self.cw_rset = self._cw.execute(self.startup_rql()) |
430 rset = self.cw_rset = self._cw.execute(self.startup_rql()) |
427 for i in xrange(len(rset)): |
431 if rset: |
428 self.wview(self.__regid__, rset, row=i, **kwargs) |
432 for i in xrange(len(rset)): |
|
433 self.wview(self.__regid__, rset, row=i, **kwargs) |
|
434 else: |
|
435 self.no_entities(**kwargs) |
429 |
436 |
430 |
437 |
431 class AnyRsetView(View): |
438 class AnyRsetView(View): |
432 """base class for views applying on any non empty result sets""" |
439 """base class for views applying on any non empty result sets""" |
433 __select__ = nonempty_rset() |
440 __select__ = nonempty_rset() |