ModuleNotFoundError: Нет модуля с именем 'musiclibrary.song'

Возникла проблема при импорте модели 'Artist' моего приложения django в views.py.

from musiclibrary.song.models import Artist

когда я запускаю сервер, он выдает ModuleNotFoundError.

from django.shortcuts import render
from django.http import HttpResponse

from musiclibrary.song.models import Artist


def hello_world(request):
    return HttpResponse("Hello World!")


def home(request):
    return render(request, "home.html")


def artist(request):
    artist_list = Artist.objects.all().  //// I have to make this line of code work
    context = {'artist_list': artist_list}
    return render(request, 'artist.html', context)

Код модели:

from django.db import models


class Artist(models.Model):
    name = models.CharField(max_length=250)
    country = models.CharField(max_length=150)
    birth_year = models.IntegerField()
    genre = models.CharField(max_length=150)


class Song(models.Model):
    Title = models.CharField(max_length=250)
    release_date = models.IntegerField()
    length = models.DateField()
    artist = models.ForeignKey('Artist', on_delete=models.CASCADE)

Журнал ошибок:

  File "/Users/m.zcomputer/PycharmProjects/myFirstApp/musiclibrary/musiclibrary/views.py", line 4, in <module>
    from musiclibrary.song.models import Artist
ModuleNotFoundError: No module named 'musiclibrary.song'

Вот как организован мой проект

enter image description here

вы получили эту ошибку из-за неправильного импорта.

from song.models import Artist

более того: когда вы хотите импортировать что-либо из вашего models.py или т.д., вы должны импортировать их из appname, а вашим appname является song, а не musiclibrary.

Вы можете перейти к:

PyCharm > Preferences > Project > Project Structure

Пометить этот модуль как исходный

Нравится

Apply > Ok

И попробуйте еще раз.

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