Не удается создать модель Geodjango в учебнике

Я пытаюсь следовать учебному пособию по GeoDjango, и у меня возникают проблемы при создании модели. Я новичок в Python, использую Django 1.7, Python 2.7 и Ubuntu 12.04. У меня все хорошо до тех пор, пока я не введу следующий код, используя оболочку python manage.py для создания модели.

class WorldBorder(models.Model):
    name = models.CharField(max_length=50)
    area = models.IntegerField()
    pop2005 = models.IntegerField('Population 2005')
    fips = models.CharField('FIPS Code', max_length=2)
    iso2 = models.CharField('2 Digit ISO', max_length=2)
    iso3 = models.CharField('3 Digit ISO', max_length=3)
    un = models.IntegerField('United Nations Code')
    region = models.IntegerField('Region Code')
    subregion = models.IntegerField('Sub-Region Code')
    lon = models.FloatField()
    lat = models.FloatField()
    mpoly = models.MultiPolygonField()
    objects = models.GeoManager()
    def __str__(self):              
        return self.name

Я уверен, что должен использовать оболочку python manage.py, но учебник был неясен. Вот сообщение об ошибке, которое я получаю,

---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-3-7541d9798060> in <module>()
----> 1 class WorldBorder(models.Model):
      2         name = models.CharField(max_length=50)
      3         area = models.IntegerField()
      4         pop2005 = models.IntegerField('Population 2005')
      5         fips = models.CharField('FIPS Code', max_length=2)

/usr/local/lib/python2.7/dist-packages/django/db/models/base.pyc in __new__(cls, name, bases, attrs)
    114                 except ValueError:
    115                     app_label_index = 1
--> 116                 kwargs = {"app_label": package_components[app_label_index]}
    117 
    118             else:

IndexError: list index out of range

Единственное, что я могу видеть, что это неправильно, это settings.py. Вот то, что я изменил по умолчанию.

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.postgresql_psycopg2',
    'NAME': 'ravi',
    'USER': 'ravi',
    'PASSWORD': 'password',
    'HOST': 'localhost',
    'PORT': '5432',
}

}

а также

INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.gis',
'world'

)

Что-нибудь еще нужно изменить в settings.py?

Кроме того, ближе всего к моей проблеме я обнаружил следующее: я попытался использовать метатег (как в более старых версиях учебника), например так:

    class Meta:
        verbose_name_plural = "World Borders"

И это, казалось, ничего не меняет. Вся помощь приветствуется.

  [1]: https://docs.djangoproject.com/en/dev/ref/contrib/gis/tutorial/

0 ответов

Другие вопросы по тегам