在Flask面板中,我有继承嵌入式文档的类,里面有
persons = db.ListField(db.ReferenceField('Person', required=False, null=True), default=[], required=False)
当我想通过Flask管理面板从我的输入字段中删除最后一个Person时,它保存文档但不删除,当我有两个时我可以删除一个,但是当我尝试删除第二个时不能保持为空。我尝试了不同的旗帜组合,我在pre_save和post_save中添加了断点,但在这两种情况下,当我删除最后一个Person时,它显示该人仍然在里面。如何从Form中删除此约束?
答案 0 :(得分:1)
当您提交带有空列表的表单时,似乎没有任何事情发生在flask-admin端。所以我使用on_model_change方法做了一个技巧,在你的情况下看起来像这样:
def on_model_change(self, form, model, is_created):
if not 'persons' in request.form :
model.persons = []