Python Django中的此模板有什么问题?
当我输入时,它会产生一个404错误,我想这样做,但当我输入时,它开始给出一个“templatedoesnotexistat/music/2/”错误。Python Django中的此模板有什么问题?,python,django,Python,Django,当我输入时,它会产生一个404错误,我想这样做,但当我输入时,它开始给出一个“templatedoesnotexistat/music/2/”错误。 为什么会发生这种情况…问题是模板文件details.html应该是detail.html,在detail之后没有s,就像在视图.py中一样,它被称为music/detail.html 或 您可以在views.py中更改为music/details.html 模板名称应该匹配。您似乎对什么是模板和什么是视图感到困惑。您的原始代码可以工作,因为您没有在
为什么会发生这种情况…问题是模板文件
details.html
应该是detail.html
,在detail
之后没有s
,就像在视图.py
中一样,它被称为music/detail.html
或
您可以在views.py
中更改为music/details.html
模板名称应该匹配。您似乎对什么是模板和什么是视图感到困惑。您的原始代码可以工作,因为您没有在详细信息视图中使用模板。您的第二个代码引用了detail.html模板,该模板可能不存在。不,我在index.html旁边添加了detail.html模板…它由{{album}组成。您可以共享
detail.html
?music/templates/music/details目录吗。html@shery224很酷,很高兴它对你有用,享受社区的旅程,祝你好运:)
from django.shortcuts import render
from django.http import HttpResponse #http response sends back html/basic webpage
from django.conf.urls import include
from django.template import loader
from .models import Album
# Create your views here.
'''def index(request):
all_objects = Album.objects.all()
html = ''
for album in all_objects:
url = "/music/" + str(album.id) + "/"
html += '<a href = "' + url + '">' + album.album_title + '</a><br>'
return HttpResponse(html)
'''
def index(request):
all_albums = Album.objects.all()
#template = loader.get_template('music/index.html')
context = {'all_albums': all_albums}
return render(request, 'music/index.html', context)
#return HttpResponse(template.render(context, request))
def detail(request, album_id):
return HttpResponse("<h2>Details of Album with id:" + str(album_id)+ "</h2>")
from django.http import Http404
from django.shortcuts import render
from django.http import HttpResponse
from django.template import loader
from .models import Album
def index(request):
all_albums = Album.objects.all()
#template = loader.get_template('music/index.html')
context = {'all_albums': all_albums}
return render(request, 'music/index.html', context)
#return HttpResponse(template.render(context, request))
#render has an inbuilt http return type
def detail(request, album_id):
try:
album = Album.objects.get(pk=album_id)
except Album.DoesNotExist:
raise Http404("Album does not exist")
return render(request, 'music/detail.html', {'album':album})