我在我的后台使用web.py来生成表单。我也想使用bootstraps表单类。这是我的HTML
的片段 <form name="test" method="POST">
$:form.render()
<input type="submit" name="button" value="Login" />
</form>
当由web.py生成时,变为
<form name="login" method="POST" class = "register">
<table>
<tr><th><label for="username">Username:</label></th><td><input type="text" id="username" name="username"/></td></tr>
<tr><th><label for="password">Password:</label></th><td><input type="password" id="password" name="password"/></td></tr>
<tr><th><label for="password_again">Repeat your password:</label></th><td><input type="password" id="password_again" name="password_again"/></td></tr>
</table>
<input type="submit" value="Register" />
</form>
然而。这使得很难在我的代码中添加引导功能。 直接来自bootstrap网站的一个例子是:
<form>
<fieldset>
<legend>Legend</legend>
<label>Label name</label>
<input type="text" placeholder="Type something…">
<span class="help-block">Example block-level help text here.</span>
<label class="checkbox">
<input type="checkbox"> Check me out
</label>
<button type="submit" class="btn">Submit</button>
</fieldset>
</form>
是否可以在表单中添加这些功能?
答案 0 :(得分:1)
改为使用$:form.render_css()
。
答案 1 :(得分:0)
我使用修改后的Form
方法编写了从render_css
类继承的类。它看起来像那样:
class bootstrap_form(form.Form):
def render_bootstrap(self):
from web import net
out = []
out.append(self.rendernote(self.note))
for i in self.inputs:
out.append('<div class="form-group">')
if not i.is_hidden():
out.append('<label for="%s">%s</label>' % (i.id, net.websafe(i.description)))
out.append(i.pre)
out.append(i.render())
out.append(self.rendernote(i.note))
out.append(i.post)
out.append('</div>')
out.append('\n')
return ''.join(out)
我希望你会发现这很有用。