Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 在Django ORM错误中添加额外的管理器方法_Python 3.x_Django Models - Fatal编程技术网

Python 3.x 在Django ORM错误中添加额外的管理器方法

Python 3.x 在Django ORM错误中添加额外的管理器方法,python-3.x,django-models,Python 3.x,Django Models,我正在Manager对象django中添加新方法,如下面的代码,并返回错误: “AttributeError:'Manager'对象没有“搜索”属性。” 有人能帮我吗 from django.db import models class CourseManager(models.QuerySet): def search(self, query): return self.get_queryset().filter( models.Q(name__icontain

我正在Manager对象django中添加新方法,如下面的代码,并返回错误:

“AttributeError:'Manager'对象没有“搜索”属性。”

有人能帮我吗

from django.db import models


class CourseManager(models.QuerySet):

 def search(self, query):
    return self.get_queryset().filter(
        models.Q(name__icontains=query) | \
        models.Q(description_icontains=query)
    )

class Course(models.Model):

 name = models.CharField('Nome', max_length=100)
 slug = models.SlugField('Atalho')
 description = models.TextField('Descrição', blank=True)
 start_date = models.DateField(
    'Data de Início', null=True, blank=True
 )
 image = models.ImageField(
    upload_to='courses/images', verbose_name='Imagem',
    null=True, blank=True
 )
 created_at = models.DateTimeField(
    'Criado em', auto_now=True
 )
 update_at = models.DateTimeField(
    'Atualizado em', auto_now=True
 )

 objects = CourseManager()

我找到了我问题的答案。
CourseManager类必须从models.Manager继承,而不是从models.QuerySet继承。

我找到了问题的解决方案。 CourseManager类必须从models.Manager继承,而不是从models.QuerySet继承