1

我在嵌入式文档中有一个字符串字段,并将该字段覆盖为选定字段。覆盖后,我将一个空的选项列表作为参数添加到选定字段。

问题是在表单访问时,我们尝试向所选字段添加一些动态选择,但由于某种原因,这失败了。

我们如何添加一些动态选择?我需要使用某种预处理器来执行此操作,因为数据来自在所有模型之后加载的数据库。

班级:

class BadgeDoc(EmbeddedDocument):
    parent_id = ObjectIdField()
    name = StringField()
    display_text = StringField()
    color = StringField()
    extra_style = StringField()
    service = ObjectIdField()
    badge_type = StringField()


class PresentationCategory(Presentation):
    product = ReferenceField('ProductType')
    article = EmbeddedDocumentField(Article)
    show_video_review = BooleanField()
    show_video_reviews_count = IntField(default=0)
    badge = ListField(EmbeddedDocumentField(BadgeDoc))

看法:

class PresentationView(NewPresentationView):

form_subdocuments = {
    'badge': {
        'form_subdocuments': {
            None:
                {
                    'form_excluded_columns': ('name', 'display_text', 'color', 'extra_style', 'service',
                                              'badge_type'),

                    'form_overrides': {
                        'parent_id': admin.form.fields.Select2Field,
                    },

                    'form_args': {
                        'parent_id': {'choices': []}
                    }
                }
        }
    }
}
4

0 回答 0