aboutsummaryrefslogtreecommitdiffstats
path: root/api-guide/routers.html
diff options
context:
space:
mode:
Diffstat (limited to 'api-guide/routers.html')
-rw-r--r--api-guide/routers.html7
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>