Django возможный круговой импорт

Я создаю новый сайт "Игры". Я запустил новое приложение Games, настроил games/models.py с кодом (ниже). После makemigrations игры и migrate, я смог войти в Admin и добавить записи.

Затем я создаю URL, представления, один шаблон. После их создания, когда я запускаю сервер, я получаю следующую ошибку:

url_patterns raise ImproperlyConfigured(msg.format(name=self.urlconf_name)) from e django.core.exceptions.ImproperlyConfigured: Включенный URLconf '<модуль 'games.urls' из '/home/mackley/PycharmProjects/alphabet/games/urls.py'>' не похоже, что в нем нет шаблонов. Если вы видите допустимые шаблоны в то проблема, вероятно, вызвана циклическим импортом.

Первое, что я заметил, это то, что верхняя строка (from django.conf import settings) в games/models.py (с помощью PyCharm) выделена серым цветом. Не знаю, имеет ли это отношение к ошибке:

Может ли кто-нибудь заметить, где я допустил ошибку? Вот соответствующий код.

# games/models.py
from django.conf import settings
from django.contrib.auth import get_user_model
from django.db import models
from django.urls import reverse


class Game(models.Model):
    title = models.CharField(max_length=255)
    date_create = models.DateTimeField(auto_now_add=True)
    date_start = models.DateTimeField(auto_now_add=False)
    body = models.TextField()
    author = models.ForeignKey(
        get_user_model(),
        on_delete=models.CASCADE,
    )
    answer_one = models.CharField(max_length=1)
    answer_two = models.CharField(max_length=1)
    answer_three = models.CharField(max_length=1)
    answer_four = models.CharField(max_length=1)
    answer_five = models.CharField(max_length=1)
    answer_six = models.CharField(max_length=1)
    answer_seven = models.CharField(max_length=1)
    payout_total = models.FloatField(null=True, blank=True, default=1.0)

    def __str__(self):
        return self.title

    def get_absolute_url(self):
        return reverse('game_detail', args=[str(self.id)])

games/admin

   # games/admin.py
    from django.contrib import admin
    from .models import Game
    
    admin.site.register(Game)

config/urls

# config/urls.py
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('accounts/', include('accounts.urls')),
    path('accounts/', include('django.contrib.auth.urls')),
    path('games/', include('games.urls')),
    path('', include('pages.urls')),
]

games/url

# games/urls.py
from django.urls import path
from .views import GameListView

urlpattrns = [
    path('', GameListView.as_view(), name='game_list'),
]

games/views.py

# games/views.py
from django.views.generic import ListView
from .models import Game

class GameListView(ListView):
    template_name = 'game_list.html'

Как указано в ошибке, это происходит, когда django не может найти правильные urlpatterns в вашей urlconf. Причин может быть много, но наиболее вероятной в вашем случае мне кажется та, что urlpatterns в games/urls.py неправильно написан как 'urlpattrns'. Попробуйте исправить опечатку и запустить снова.

Вернуться на верх