def html(self):
# ????????
form_html = ''
if self.form_def is not None:
form_html = self.form_def.render(self.data, self._template, self.edit_fields, self.omit_fields, self.errors, **self.options)
for widget in self._widgets:
form_html += widget.html()
buttons = self.form_def.buttons(self._buttons)
else:
fields_html = {}
for widget in self._widgets:
if isinstance(widget, hidden_input):
form_html += widget.html()
else:
fields_html[widget.name] = widget.html()
if not self._template: self.layout()
form_html += Template(self._template).safe_substitute(fields_html)
buttons = self._gen_buttons_html(self._buttons)
if 'submit' in self._triggers:
kss_url = self._triggers['submit'][0][0]
else:
kss_url = ''
klass = ' '.join(self.klass)
if kss_url:
klass += ' KSSLoad'
loading_data = 'data-loading="%s"' % self.loading_text
else:
loading_data = ''
desc, h3 = '', ''
if self.title: h3 = '<h3>%s</h3>' % self.title
if self.description: desc = '<div class="discreet m_b_3">%s</div>' % self.description
if self._layout == 'inline':
return '''<form action="%s" %s class="%s" method="post">%s%s<table style="width: 100%%"><tr><td>%s</td><td>%s</td></tr></table>%s</form>''' % \
(kss_url or self.action, loading_data, klass, h3, desc, form_html, buttons, self.hidden_input)
else:
return '''<form action="%s" %s class="%s" method="post">%s%s%s%s%s</form>''' % \
(kss_url or self.action, loading_data, klass, h3, desc, form_html, buttons, self.hidden_input)
评论列表
文章目录