当前位置: 首页 > 面试题库 >

Django Admin:仅将一个自定义窗口小部件用于一个模型字段

柳联
2023-03-14
问题内容

我的模型中有一个DateTimeField字段。我想将其显示为Django管理站点中的复选框小部件。为此,我创建了一个自定义表单小部件。但是,我不知道如何仅将我的自定义窗口小部件用于这一字段。

在Django文档解释了如何使用自定义窗口小部件的所有特定类型的字段:

class StopAdmin(admin.ModelAdmin):
    formfield_overrides = {
        models.DateTimeField: {'widget': ApproveStopWidget }
    }

但是,这还不够精细。我只想更改一个字段。


问题答案:

为你的ModelAdmin创建一个自定义ModelForm并将“ widgets”添加到其Meta类,如下所示:

class StopAdminForm(forms.ModelForm):
  class Meta:
    model = Stop
    widgets = {
      'approve_ts': ApproveStopWidget(),
    }
    fields = '__all__'

class StopAdmin(admin.ModelAdmin):
  form = StopAdminForm

做完了!



 类似资料:
  • 我们要定义一个模型,首先我们会用到define, 它的返回值类似是 Model<TInstance, TAttributes> 。 define<TInstance, TAttributes>(modelName: string, attributes: DefineAttributes, options?: DefineOptions<TInstance>): Model

  • 本文向大家介绍用js写一个绑定事件检测窗口大小相关面试题,主要包含被问及用js写一个绑定事件检测窗口大小时的应答技巧和注意事项,需要的朋友参考一下

  • 本文向大家介绍python3+PyQt5 自定义窗口部件--使用窗口部件样式表的方法,包括了python3+PyQt5 自定义窗口部件--使用窗口部件样式表的方法的使用技巧和注意事项,需要的朋友参考一下 本文借用HTML的css语法,将样式表应用到窗口部件。这里只是个简单的例子,实际上样式表的语法很丰富。 以下类似于css: 如果在选择器的前面加上一个句点,比如.QLineEdit,则选择器就会只

  • The BrowserWindow module is the foundation of your Electron application, and it exposes many APIs that can change the look and behavior of your browser windows. In this tutorial, we will be going over

  • 长话短说,我搜索了与我类似的问题,所以我可以“自己”解决这个问题。我在这里和这里找到了这些例子,但没有一个对我有用。 我需要将在第一个窗口的TextField中键入的字符串传递给下一个窗口。 我的主要: 当我使用FXML时,这是Window1(java1)的控制器: 以及Window2的控制器(java2): 问题指向我用自定义函数(j2.setLbText)设置Text的Java1Control

  • 定义一个接口还是很方便的,我先给出一个PHP语言中的形式。 <?php interface i_myinterface { public function hello(); } 那它在扩展中的实现是这样的。 zend_class_entry *i_myinterface_ce; static zend_function_entry i_myinterface_method[]={