未找到 'books_recsys_app.views.home' 的 NoReverseMatch 异常值反转

NoReverseMatch Exception Value Reverse for 'books_recsys_app.views.home' not found

我正在制作一个电影推荐应用程序。在 views.py.

中搜索电影时出现此错误

views.py

data = post_data.get('data', None)
if data:
    return redirect('%s?%s' % (reverse('books_recsys_app.views.home'),urllib.urlencode({'q': data})))

urls.py

app_name = "books_recsys_app"
urlpatterns = [
    url(r'^docs/', include('rest_framework_swagger.urls')),
    url(r'^$', books_recsys_app.views.home, name='home'),
    url(r'^auth/', books_recsys_app.views.auth, name='auth'),   
    url(r'^signout/',books_recsys_app.views.signout,name='signout'),
    url(r'^rate_movie/',books_recsys_app.views.rate_movie,name='rate_movie'),
    url(r'^movies-recs/',books_recsys_app.views.movies_recs,name='movies_recs'),
    # url(r'^admin/', include(admin.site.urls)),
    url(r'^admin/', admin.site.urls),
    url(r'^users-list/',UsersList.as_view(),name='users-list')
]  

从 Django 1.8 开始,您不应该使用点 python 路径来反转 URLs。使用 URL 模式中的 name 代替:

reverse('books_recsys_app:home')

books_recsys_app: 命名空间是必需的,因为您的 urls.py 中有 app_name = "books_recsys_app"