diff options
Diffstat (limited to 'api-guide/routers.html')
| -rw-r--r-- | api-guide/routers.html | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/api-guide/routers.html b/api-guide/routers.html index 028314bc..365154ad 100644 --- a/api-guide/routers.html +++ b/api-guide/routers.html @@ -243,6 +243,13 @@ urlpatterns = router.urls <li>URL pattern: <code>^accounts/$</code> Name: <code>'account-list'</code></li> <li>URL pattern: <code>^accounts/{pk}/$</code> Name: <code>'account-detail'</code></li> </ul> +<hr /> +<p><strong>Note</strong>: The <code>base_name</code> argument is used to specify the initial part of the view name pattern. In the example above, that's the <code>user</code> or <code>account</code> part.</p> +<p>Typically you won't <em>need</em> to specify the <code>base-name</code> argument, but if you have a viewset where you've defined a custom <code>get_queryset</code> method, then the viewset may not have any <code>.model</code> or <code>.queryset</code> attribute set. If you try to register that viewset you'll see an error like this:</p> +<pre class="prettyprint lang-py"><code>'base_name' argument not specified, and could not automatically determine the name from the viewset, as it does not have a '.model' or '.queryset' attribute. +</code></pre> +<p>This means you'll need to explicitly set the <code>base_name</code> argument when registering the viewset, as it could not be automatically determined from the model name.</p> +<hr /> <h3 id="extra-link-and-actions">Extra link and actions</h3> <p>Any methods on the viewset decorated with <code>@link</code> or <code>@action</code> will also be routed. For example, given a method like this on the <code>UserViewSet</code> class:</p> |
