2015-10-16 37 views
0

我想請點擊此鏈接創建自己的自定義路由器:http://www.django-rest-framework.org/api-guide/routers/#exampleDjangoRestFramework - 創建自定義路由時,「後綴」會做什麼?

第一路由,有這樣一行說

initkwargs={'suffix': 'List'} 

,然後第二條路線,有一個線說:

initkwargs={'suffix': 'Detail'} 

這條線究竟做什麼?當我向上滾動,並讀什麼就是這裏所說的:http://www.django-rest-framework.org/api-guide/routers/#custom-routers它說

initkwargs: A dictionary of any additional arguments that should be passed when instantiating the view. Note that the suffix argument is reserved for identifying the viewset type, used when generating the view name and breadcrumb links. 

它看起來並不像我甚至需要在我的自定義路線initkwargs(我沒有,我需要傳遞給任何額外的參數風景)。 「請注意,後綴參數保留用於標識'viewset類型'」?我看不出有什麼好處。 (不'映射'已經顯示它是什麼動作?列表,檢索等?)。

回答

0

該字段suffix用於REST框架的API視圖輸出。該頁面的標題設置爲特定路線的「{basename} {suffix}」。除了化妝品以外,它沒有任何效果。 「識別視圖類型」不是一個程序化的東西,我認爲這是你困惑的地方,它只是意味着在API顯示頁面中識別它。

它可能不是最有用的東西,但它確實稍微改善了API顯示以查看「MyCoolAPI列表」等,特別是如果您有多個使用相同映射的路由。 suffix然後允許您在查看API時輕鬆區分它們。

您可以自由的不在initkwargs中設置它,但是如果沒有設置suffix,那麼所有API頁面的標題就是「{basename}」。