title: Django rest framework, request object cannot list all method by dir
body: <p>In any viewset, <code>build_absolute_uri</code> not in <code>dir(request)</code> but in <code>dir(request._request)</code>. Why <code>request.build_absolute_uri</code> call <code>request._request.build_absolute_uri</code> ?</p>
  <pre class="lang-py prettyprint-override"><code>class DefaultUrlViewSet(ModelViewSet):
      ...
  
      def get_queryset(self):
          request = self.request
          assert 'build_absolute_uri' not in dir(request)
          assert 'build_absolute_uri' in dir(request._request)
          assert hasattr(request, 'build_absolute_uri')
          print('???? why hasattr but cannot list it in dir?')
          return super().get_queryset()
  </code></pre>