Python 不要重定向到动态url

Python 不要重定向到动态url,python,django,Python,Django,为什么我不能像使用代码一样转到动态url?xyz是电影名。Demo是我模特的名字 这是my view.py: from django.shortcuts import render from .models import Demo def home(request): movie_list = Demo.objects.all() return render(request, 'home.html', {movie_list': movie_list,}) def mov

为什么我不能像使用代码一样转到动态url?xyz是电影名。Demo是我模特的名字

这是my view.py:

from django.shortcuts import render 
from .models import Demo 

def home(request):
    movie_list = Demo.objects.all()
    return render(request, 'home.html', {movie_list': movie_list,})

def movie_detail(request,title):
    detail = Demo.objects.get(title=title)
    return render(request, 'detail.html', {'detail': detail})
URL.py:

from django.conf.urls import include, url
from django.contrib import admin
from netflix.views import home,movie_detail

urlpatterns = [url(r'^admin/', include(admin.site.urls)),
               url(r'^movie', home),
               url(r'^movie/(?P<title>.*)/$', movie_detail, name='movie_detail')]
detail.html:

<div class="container-fluid">
  <div class="row">
<div class="card mb-3">
  <img class="card-img-top" src="{{detail.img_url}}" alt="Card image cap">
  <div class="card-body">
    <h5 class="card-title">{{detail.title}}</h5> 
  </div>
</div>

您错过了urlr“^movie”主页中的终止字符

试试这个:

urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url(r'^movie$', home),
    url(r'^movie/(?P<title>.*)$', movie_detail, name='movie_detail')

]
你可以这样做:

urlpatterns = [
    url(r'^movie/(?P<title>\d+)/$', movie_detail, name='movie_detail')
]

您需要在/movie URL中添加一个终止的$,否则它将匹配以该字符串开头的所有内容

url(r'^movie$', home),

它可以用。我可以问她一个问题吗?如何向htmli展示整个div类我可以在php中使用{{variable | raw}},但我不知道在pythonIn S.O中该做什么,这对于回答您的问题至关重要。