我在我的表单中使用了管理员的filteredselectmultiple
小部件:
students = forms.ModelMultipleChoiceField(queryset=Student.objects.all(),widget=FilteredSelectMultiple("Subjects",is_stacked=False))
但是,没有像管理页面那样的小部件样式。
我在我的模板中添加了form.media
,但我知道我的页面中没有包含css文件。
问题是:我需要在模板中包含哪些css文件?我是否必须为我使用的每个django小部件添加它们?
答案 0 :(得分:2)
我不知道为什么默认情况下为什么所需的css文件不包含在窗口小部件媒体中,因为form.media应该收集该窗体中使用的窗口小部件的所有媒体文件...我很快自己尝试了遇到同样的问题。
您需要包含的css文件似乎是 widgets.css 。将其添加到我的表单中使它对我有用:
class Media:
css = {
'all': ['{0}css/widgets.css'.format(settings.ADMIN_MEDIA_PREFIX), ]
}
如果这回答了你的问题,请告诉我!我是SO的新手所以欢迎任何反馈:)
答案 1 :(得分:0)
我不知道答案,但我知道如何找到答案。我将这个小部件放在管理员中(也许你已经有了一个例子),然后在我的浏览器中加载它所在的页面。然后我会在Firefox中打开Chrome Developer Tools或Firebug并使用元素检查器。从相关小部件中选择HTML元素,然后在CSS窗格中查看CSS文件对其布局的贡献。您还将看到它们匹配的规则 - 很可能您已经拥有了所需的文件,但它需要位于特定容器内才能正确布局。
答案 2 :(得分:0)