view must be a callable or a list/tuple in the case of include()
Django使用manage.py文件运行的时候发现命令行出现上述错误,查看原因发现是:
Django的1.10版本之后不能使用如下语法:
from django.conf.urls import include, url
1.10版本之后不能通过导入模式使用url函数了(no longer pass import to url())。为什么不能使用?没找到原因,但是可以有几个解决方法
- Django的版本
既然1.10以后的版本不支持,那么就用10之前的版本,测试结果通过,运行正常。
2.修改代码
既然版本要求不如此使用,那么肯定有别的方式来使用
1.09版本
from django.conf.urls import include, url
urlpatterns = [
... url(r'^config/',include('app.config.urls'),name="config_home_page")
]
以上代码在1.10以前版本正常使用。10版本以后可修改如下:
from app.config import urls
urlpatterns = [
url(r'^config/', urls, name="config_home_page")
]
以上就是问题所在的原因。
对于自定义的view,使用import 来使用,避免使用url()来使用view
参考资料:
django.config.urls utility functions
https://docs.djangoproject.com/ja/1.10/ref/urls/