我有一个基于灵巧的内容类型,在模式中定义了不同的编辑视图和字段集。每当我想在第一个字段集以外的另一个字段集中更新小部件/字段时,它就会变得很糟糕。例如:
self.groups[0].fields['my_field'].mode = HIDDEN_MODE
必须用于对第二个字段集隐藏my_field
。要使相同的字段必需
self.schema['my_field'].required = True
就可以了。
但是我怎么能添加一个css类的小部件上的另一个比第一个字段集?我的意思是,什么
self.fields['my_field_on_first_fieldset'].widget.addClass("myClass")
可以,如果我的小部件将在第一个字段集"page"。
按照Martin Aspeli的教程,我测试了您的请求,并且可以奇怪地确认class -attribute不能应用于子字段集中不可见的小部件,在小部件名称的引用中返回'Key Error'。
与其他属性,如;'size',没有问题。
你可以通过Javascript应用这个类。
如果你想在客户端没有启用Javascript的情况下提供一个回退,你可以在updateWidget()中添加一个条件,检查它是否被启用,如果没有,分别用addClass()应用类的class属性。这将工作,因为所有字段显示,而不是隐藏了。