先看代码,一下我的配置的 url,并且我知道 router 里面可以定义base_name
来给 url 命名,不然就按照模型里面默认定义,我给 api 设置了 namespace,现在我想在前端模板中使用这些 api,就是使用{% url 'api.user' %}这种方式。现在的问题在于我只知道 /api/users/这种二级的 URL 的名称,但是不知道 /api/这个根目录的名称啊,我看官方的教程里面是去设置了一个 view 来展示这个根 url 的,所以当做一个普通的视图函数来添加到 urlpatterns 中去定义名称,但是既然 restframework 可以直接代开 /api/这个地址,那就说明这个 url 肯定是被定义过的,请问这个 url 的名称是什么,怎么使用{%url%}标签来得到这个地址?我目前只能使用硬地址
router = DefaultRouter()
router.register(r'users',api_views.UserListSet)
router.register(r'articles',api_views.ArticleListSet)
router.register(r'tags',api_views.TagListSet)
router.register(r'categorys',api_views.CategoryListSet)
router.register(r'timelines',api_views.TimelineListSet)
urlpatterns = [
...
url(r'^api/',include(router.urls,namespace='api')),
]
1
Hopetree OP 换一种方式,就是如果我把 /api/放到 router 里面,比如这样
``` router.register(r'^$',views,base_name='base') ``` 请问这个 views 是什么?难道要自己写吗 |
2
Hopetree OP 我已经在源码中找到了,名字叫 api-root
|