从 Wagtail 2.13.x 开始,从 FieldBlock 中删除了 render_form 方法(大多数默认块继承的块,例如 CharBlock、TextBlock 等)
这些块是如何使用 Wagtail 2.13.x 呈现的?
渲染块的测试如下:
def test_form_render(self):
block = FormChooserBlock()
test_form_html = block.render_form(self.form, "form")
expected_html = "\n".join(
[
'<select name="form" placeholder="" id="form">',
'<option value="">---------</option>',
'<option value="%s" selected>Basic Form</option>' % self.form.id,
"</select>",
]
)
self.assertInHTML(expected_html, test_form_html)
显然,当升级到 wagtail 2.13.x 时,这个测试会中断,因为 render_form 方法不再是 block 的属性。