Я не могу создать объект в оболочке python, потому что не могу импортировать мое приложение со строкой "from products.models import Product".

Я следую учебнику по Django, в котором мы создаем приложение с именем products

Я запускаю интерпретатор python в корневой папке

C:\Users\dancc\dev2\cfeproj

использование линии

python manage.py shell

когда я запускаю линию

from products.models import Product

Я получаю следующее сообщение об ошибке

ImportError: cannot import name 'Product' from 'products.models' (C:\Users\dancc\dev2\cfeproj\products\models.py)

Я читал, что это случай циркулярного импорта, но я понятия не имею, какой файл является причиной этого

Здесь находится каждая часть файлов, включающая работы с продуктами

models.py

#C:\Users\dancc\dev2\cfeproj\products\models.py

from django.db import models

# Create your models here.
class Prodcut(models.Model):
    title           = models.TextField()
    description     = models.TextField()
    price           = models.TextField()
    summary         = models.TextField(default='this is so cool!')

settings.py

#C:\Users\dancc\dev2\cfeproj\cfehome\settings.py

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    'products',
]

apps.py

#C:\Users\dancc\dev2\cfeproj\products\apps.py

from django.apps import AppConfig


class ProductsConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'products'

0002_summery.py

#C:\Users\dancc\dev2\cfeproj\products\migrations\0002_summery.py

from django.db import migrations, models


class Migration(migrations.Migration):

    dependencies = [
        ('products', '0001_initial'),
    ]

    operations = [
        migrations.AddField(
            model_name='prodcut',
            name='summery',
            field=models.TextField(default='this is so cool!'),
        ),
    ]

Я также читал, что проблема может быть в структуре моих файлов, но я не хочу возиться с расположением, не разобравшись до конца. enter image description here

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