【发布时间】:2021-08-28 09:56:15
【问题描述】:
我收到以下错误:
错误;未找到与查询匹配的电影 未找到与查询匹配的电影 查询 未找到与查询匹配的电影 未找到与查询匹配的电影 查询 未找到与查询匹配的电影 未找到与查询匹配的电影 查询
我的代码:
Models.py
CATEGORY_CHOICES = (
("A","ACTION"),
("D","DRAMA"),
("C","COMEDY"),
("R",'ROMANCE'),
)
LANGUAGE_CHOICES = (
("EN","ENGLISH"),
("GR","GERMAN")
)
STATUS_CHOICES = (
("RA","RECENTLY ADDED"),
('MW','MOST WATCHED'),
("TR",'TOP RATED'),
)
class Movie(models.Model):
title = models.CharField(max_length=100)
title_english = models.CharField(max_length=100)
descritpion = models.TextField(max_length=1000)
image = models.ImageField(upload_to="movies")
category = models.CharField(choices=CATEGORY_CHOICES,max_length=1)
language = models.CharField(choices=LANGUAGE_CHOICES,max_length=3)
status = models.CharField(choices=STATUS_CHOICES,max_length=2)
year_of_production = models.TextField(max_length=1000)
view_count = models.IntegerField(default=0)
def __str__(self):
return self.title
Link_choice = (
("D","Download LINK"),
("W","WATCH LINK"),
)
class Movielinks(models.Model):
movie = models.ForeignKey(Movie,related_name="movie_watch_link",on_delete=models.CASCADE)
type = models.CharField(choices=Link_choice,max_length=1)
link = models.URLField()
def __str__(self):
return str(self.movie)
Views.py
from django.views.generic import ListView,DetailView
from .models import Movie,Movielinks
class MovieList(ListView):
model = Movie
template_name = 'index.html'
class MovieDetail(DetailView):
model = Movie
def get_object(self):
object = super(MovieDetail,self).get_object()
return object
def get_context_data(self, **kwargs):
context = super(MovieDetail,self).get_context_data(**kwargs)
context["links"] = Movielinks.objects.first(movie=self.get_object())
return context
我正在尝试一切,但没有任何效果。当我将 MovieDetail 更改为 ListView 时,它正在工作,但我不需要这个。
url.py
from django.urls import path
from .views import MovieList, MovieDetail
urlpatterns = [
path('', MovieList.as_view(),name="index"),
path("<int:pk>", MovieDetail.as_view(),name="movie_list"),
]
【问题讨论】:
标签: python python-3.x django django-models django-rest-framework