2
目前正在Django網站上工作,我有一個問題,從我的models.py
模塊導入課程及其屬性到我的音樂應用程序中的views.py
模塊。據我所知,Django使用元類來構造模型,所以定義的字段並不會作爲類的屬性。這是問題嗎?如果是這樣,我該如何解決它?ModuleNotFoundError:沒有名爲'__main __。models'的模塊; '__main__'不是一個包
目錄結構:
music
migrations
templates
_init_
admin.py
apps.py
models.py
tests.py
urls.py
views.py
內models.py
的代碼是:
from django.db import models
class Album(models.Model):
artist = models.CharField(max_length=250)
album_title = models.CharField(max_length=500)
genre = models.CharField(max_length=100)
album_logo = models.CharField(max_length=1000)
def __str__(self):
return self.album_title + ' - ' + self.artist
內views.py
的代碼是:
from django.http import HttpResponse
from .models import Album
from django.template import loader
def index(request):
all_albums = Album.object.all()
template = loader.get_template('music/index.html')
context = {'all albums': all_albums,}
return HttpResponse(template.render(context, request))
def details(request, album_id):
return HttpResponse("<h2> Details for Album id: " + str(album_id) + " </h2>")
的錯誤:
ModuleNotFoundError: No module named '__main__.models'; '__main__' is not a package
錯誤位置: from .models import Album
就縮進它。 –
你指的是什麼? – Osso94
通過一個選項卡縮進'__str__'定義及其返回語句(如果您願意,可以使用4個空格) – Marco