web/views/forms.py
changeset 6453 7fdd780d87e4
parent 6246 62e25fac41cd
child 6584 c4aa6186d3a3
equal deleted inserted replaced
6452:6b6a2fa28069 6453:7fdd780d87e4
   166         """
   166         """
   167         if rendervalues is not None:
   167         if rendervalues is not None:
   168             warn('[3.6] rendervalues argument is deprecated, all named arguments will be given instead',
   168             warn('[3.6] rendervalues argument is deprecated, all named arguments will be given instead',
   169                  DeprecationWarning, stacklevel=2)
   169                  DeprecationWarning, stacklevel=2)
   170             kwargs = rendervalues
   170             kwargs = rendervalues
       
   171         w = kwargs.pop('w', None)
       
   172         if w is None:
       
   173             warn('[3.10] you should specify "w" to form.render() named arguments',
       
   174                  DeprecationWarning, stacklevel=2)
       
   175             data = []
       
   176             w = data.append
       
   177         else:
       
   178             data = None
   171         self.build_context(formvalues)
   179         self.build_context(formvalues)
   172         if renderer is None:
   180         if renderer is None:
   173             renderer = self.default_renderer()
   181             renderer = self.default_renderer()
   174         return renderer.render(self, kwargs)
   182         renderer.render(w, self, kwargs)
       
   183         if data is not None:
       
   184             return '\n'.join(data)
   175 
   185 
   176     def default_renderer(self):
   186     def default_renderer(self):
   177         return self._cw.vreg['formrenderers'].select(
   187         return self._cw.vreg['formrenderers'].select(
   178             self.form_renderer_id, self._cw,
   188             self.form_renderer_id, self._cw,
   179             rset=self.cw_rset, row=self.cw_row, col=self.cw_col or 0)
   189             rset=self.cw_rset, row=self.cw_row, col=self.cw_col or 0)