首页 > 解决方案 > 我得到了这个错误 AttributeError: module 'django.contrib.gis.db.models' has no attribute 'GeoManager'

问题描述

This Is My Models : 

class Intervention(models.Model):
        Titre_intervention = models.TextField(max_length=255)
        date_intervention = models.DateField(auto_now_add=True)
        type_panne = models.ForeignKey(Panne,on_delete=models.CASCADE)
        etat = models.CharField(max_length=30)
        description = models.TextField(max_length=255)
        image = models.ImageField(blank=True,null=True,upload_to='medial/%Y/%m/%D')
        equipements = models.ManyToManyField(Equipement)
        clients = models.ForeignKey(Client,on_delete=models.CASCADE,default=True)
        location = models.PointField(srid=4326)
        objects = models.GeoManager()

这就是我进口的:

from __future__ import unicode_literals
from django.db import models
from django.contrib.gis.db import models

所以当我运行 Makemigrations 我得到错误:

AttributeError:模块“django.contrib.gis.db.models”没有属性“GeoManager”

标签: djangomodelmigratemakemigrations

解决方案


GeoManager 已被移除。

似乎可以正常运行的解决方法:

在您的模型文件中导入:

from django.db.models import Manager as GeoManager

在您的模型类中:

objects = GeoManager()

推荐阅读