web/views/forms.py
changeset 6584 c4aa6186d3a3
parent 6453 7fdd780d87e4
child 6906 5f13aefb470b
equal deleted inserted replaced
6583:4e7325d6b616 6584:c4aa6186d3a3
    48 from logilab.common.decorators import iclassmethod
    48 from logilab.common.decorators import iclassmethod
    49 from logilab.common.compat import any
    49 from logilab.common.compat import any
    50 from logilab.common.deprecation import deprecated
    50 from logilab.common.deprecation import deprecated
    51 
    51 
    52 from cubicweb import typed_eid
    52 from cubicweb import typed_eid
       
    53 from cubicweb.utils import support_args
    53 from cubicweb.selectors import non_final_entity, match_kwargs, one_line_rset
    54 from cubicweb.selectors import non_final_entity, match_kwargs, one_line_rset
    54 from cubicweb.web import uicfg, form, formwidgets as fwdgs
    55 from cubicweb.web import uicfg, form, formwidgets as fwdgs
    55 from cubicweb.web.formfields import relvoc_unrelated, guess_field
    56 from cubicweb.web.formfields import relvoc_unrelated, guess_field
    56 
    57 
    57 
    58 
   177         else:
   178         else:
   178             data = None
   179             data = None
   179         self.build_context(formvalues)
   180         self.build_context(formvalues)
   180         if renderer is None:
   181         if renderer is None:
   181             renderer = self.default_renderer()
   182             renderer = self.default_renderer()
   182         renderer.render(w, self, kwargs)
   183         if support_args(renderer.render, 'w'):
       
   184             renderer.render(w, self, kwargs)
       
   185         else:
       
   186             warn('[3.10] you should add "w" as first argument o %s.render()'
       
   187                  % renderer.__class__, DeprecationWarning)
       
   188             w(renderer.render(self, kwargs))
   183         if data is not None:
   189         if data is not None:
   184             return '\n'.join(data)
   190             return '\n'.join(data)
   185 
   191 
   186     def default_renderer(self):
   192     def default_renderer(self):
   187         return self._cw.vreg['formrenderers'].select(
   193         return self._cw.vreg['formrenderers'].select(