当前位置: 首页 > 知识库问答 >
问题:

您好,我的自定义验证正在抛出一个类型错误,表示IsubClass()arg 1必须是一个类

柳越
2023-03-14

嗨,我添加了自定义验证。它抛出一个类型错误,表示issubclass()arg 1必须是一个类。和我的代码在管理。py是

class AppraisalScheduleAdmin(admin.ModelAdmin):
    exclude = ['intUpdatedBy']
    form = 'tbmstappraisalschedForm'

        def save_model(self, request, obj, form, change):
            obj.intUpdatedBy = request.user.id
            obj.save()

class tbmstappraisalschedForm(forms.ModelForm):

     def clean(self):
          """ 
          Override the default clean method to check whether this course has been already inputted.
          """    
          cleaned_data = super(tbmstappraisalschedForm, self).clean()
          depart_id = cleaned_data.get('intDeptID')
          fromdate = cleaned_data.get('sdtFromDate')
          todate = cleaned_data.get('todate')
          matching_records = tbmstappraisalsched.objects.filter(intDeptID=depart_id)
          if self.instance:
              matching_records.exclude(pk=self.instance.pk)
          if matching_records.exists():
              msg = "The slot for selected department and selected dates exists" % name
              raise ValidationError(msg)
          else:
              return self.cleaned_data
    class Meta:
        model = tbmstappraisalsched

回溯是

回溯:get\u响应103中的文件“C:\Python27\lib\site packages\django\core\handlers\base.py”。解析程序\匹配=解析程序。在resolve 319中解析(request.path_info)文件“C:\Python27\lib\site packages\django\core\urlresolvers.py”。对于自我的模式。url_模式:url_模式347中的文件“C:\Python27\lib\site packages\django\core\urlresolvers.py”。patterns=getattr(self.urlconf_模块,“urlpatterns”,self.urlconf_模块)文件“C:\Python27\lib\site packages\django\core\urlresolvers.py”,位于urlconf_模块342中。自我_urlconf_module=import_module(self.urlconf_name)文件“C:\Python27\lib\site packages\django\utils\importlib.py”,位于import_模块35中。在5中导入(名称)文件“C:\pythonprgs\opas\opas\url.py”。管理autodiscover()文件“C:\Python27\lib\site packages\django\contrib\admin\uuuuu init\uuuuu.py”位于autodiscover 29中。在导入模块35中导入模块(“%s.admin”%app)文件“C:\Python27\lib\site packages\django\utils\importlib.py”。在60中导入(名称)文件“C:\pythonprgs\opas\schdeules\admin.py”。管理地点在寄存器98中注册(tbmstappraisalsched,evaluationscheduleadmin)文件“C:\Python27\lib\site packages\django\contrib\admin\sites.py”。验证(admin_类,模型)文件“C:\Python27\lib\site packages\django\contrib\admin\validation.py”,位于validate 25中。验证\u base 317中的验证\u base(cls,模型)文件“C:\Python27\lib\site packages\django\contrib\admin\validation.py”。如果hasattr(cls,“form”)而不是issubclass(cls.form,BaseModelForm):

异常类型:TypeError at /admin/schdeules/tbmstappraisalsched/add/异常值:issubclass()arg 1必须是一个类

共有1个答案

吴宏扬
2023-03-14

请参阅下面的管理员代码。派克

    from .forms import tbmstappraisalschedForm 
    class AppraisalScheduleAdmin(admin.ModelAdmin):
        exclude = ['intUpdatedBy']
    #    form = 'tbmstappraisalschedForm'  you can not pass a string  here .
         form = tbmstappraisalschedForm     #do like this

 类似资料:
  • //为(int i=0; i创建具有100个存储空间的数组 //提示用户输入要查找的索引

  • 前面我们一直使用字符串(String)作为错误消息。实际上,字符串作为错误类型是存在一些局限的。下面是友好的错误类型标准。字符串(String)很好地实现了前两点,但无法做到后两点: Rust 允许自定义错误类型。一般而言,一个“良好”的错误类型: 使用相同类型来表达不同的错误 给用户提供友好的错误信息 方便和其他类型比较 Good: Err(EmptyVec) Bad: Err("Please

  • 我有一个json格式的地图列表,我正试图在列表上呈现“title”。 我通过一个api(http.get)读取数据,然后解析它。 我想在列表中显示标题。 这是我的代码... 获取数据 转换为json 欢迎参加模范班 我得到一个错误说"类型'列表'不是类型'地图的子类型

  • 我想把字符串从Main传递到Header。它成功了,但也发出了警告。我是React的初学者,所以我不知道它一定是函数的意思。 有人知道如何解决这个警告吗? 警告是: 我的代码如下: 主要的js Header.js

  • 描述:com.mongotest.demo.seeder中构造函数的参数0需要类型为“com.mongotest.repositories.studentrepository”的bean,但找不到该bean。 pom.xml

  • 具有自定义验证的基本HTML5表单。如果提交的值不是数字,浏览器应显示错误消息“字段必须是数字”如果输入“abc”并按submit(或按enter键),该字段将标记为无效,但不会显示错误消息。再次按submit(或按enter)将显示消息。这种双重提交行为出现在Windows和OS X上最新版本的Firefox、Chrome、Safari和IE上。您会注意到默认的“此字段是必需的…”消息在第一次提