From 66eabe8bd1a539f92c3d677565d69edc29a1721b Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Tue, 21 Feb 2012 22:50:41 +0000 Subject: Remove staticviews. Use standard login/logout --- djangorestframework/renderers.py | 4 +--- .../templates/djangorestframework/base.html | 11 +++++++++-- .../templates/djangorestframework/login.html | 2 +- djangorestframework/tests/accept.py | 15 +++++++++++++-- djangorestframework/tests/oauthentication.py | 2 +- djangorestframework/tests/renderers.py | 3 ++- djangorestframework/tests/views.py | 12 ++++++------ djangorestframework/urls.py | 11 +++++++---- 8 files changed, 40 insertions(+), 20 deletions(-) (limited to 'djangorestframework') diff --git a/djangorestframework/renderers.py b/djangorestframework/renderers.py index 75957c6d..d9aa4028 100644 --- a/djangorestframework/renderers.py +++ b/djangorestframework/renderers.py @@ -335,7 +335,7 @@ class DocumentingTemplateRenderer(BaseRenderer): context = RequestContext(self.view.request, { 'content': content, 'view': self.view, - 'request': self.view.request, # TODO: remove + 'request': self.view.request, 'response': self.view.response, 'description': description, 'name': name, @@ -344,8 +344,6 @@ class DocumentingTemplateRenderer(BaseRenderer): 'available_formats': self.view._rendered_formats, 'put_form': put_form_instance, 'post_form': post_form_instance, - 'login_url': login_url, - 'logout_url': logout_url, 'FORMAT_PARAM': self._FORMAT_QUERY_PARAM, 'METHOD_PARAM': getattr(self.view, '_METHOD_PARAM', None), }) diff --git a/djangorestframework/templates/djangorestframework/base.html b/djangorestframework/templates/djangorestframework/base.html index 1d4ae92a..00ecf8c3 100644 --- a/djangorestframework/templates/djangorestframework/base.html +++ b/djangorestframework/templates/djangorestframework/base.html @@ -20,8 +20,15 @@

{% block branding %}Django REST framework v {{ version }}{% endblock %}

- {% if user.is_active %}Welcome, {{ user }}.{% if logout_url %} Log out{% endif %}{% else %}Anonymous {% if login_url %}Log in{% endif %}{% endif %} - {% block userlinks %}{% endblock %} + {% block userlinks %} + {% if user.is_active %} + Welcome, {{ user }}. + Log out + {% else %} + Anonymous + Log in + {% endif %} + {% endblock %}
{% block nav-global %}{% endblock %} diff --git a/djangorestframework/templates/djangorestframework/login.html b/djangorestframework/templates/djangorestframework/login.html index 07929f0c..248744df 100644 --- a/djangorestframework/templates/djangorestframework/login.html +++ b/djangorestframework/templates/djangorestframework/login.html @@ -17,7 +17,7 @@
-
+ {% csrf_token %}
{{ form.username }} diff --git a/djangorestframework/tests/accept.py b/djangorestframework/tests/accept.py index d66f6fb0..21aba589 100644 --- a/djangorestframework/tests/accept.py +++ b/djangorestframework/tests/accept.py @@ -1,3 +1,4 @@ +from django.conf.urls.defaults import patterns, url, include from django.test import TestCase from djangorestframework.compat import RequestFactory from djangorestframework.views import View @@ -13,9 +14,19 @@ SAFARI_5_0_USER_AGENT = 'Mozilla/5.0 (X11; U; Linux x86_64; en-ca) AppleWebKit/5 OPERA_11_0_MSIE_USER_AGENT = 'Mozilla/4.0 (compatible; MSIE 8.0; X11; Linux x86_64; pl) Opera 11.00' OPERA_11_0_OPERA_USER_AGENT = 'Opera/9.80 (X11; Linux x86_64; U; pl) Presto/2.7.62 Version/11.00' + +urlpatterns = patterns('', + url(r'^api', include('djangorestframework.urls', namespace='djangorestframework')) +) + + class UserAgentMungingTest(TestCase): - """We need to fake up the accept headers when we deal with MSIE. Blergh. - http://www.gethifi.com/blog/browser-rest-http-accept-headers""" + """ + We need to fake up the accept headers when we deal with MSIE. Blergh. + http://www.gethifi.com/blog/browser-rest-http-accept-headers + """ + + urls = 'djangorestframework.tests.accept' def setUp(self): diff --git a/djangorestframework/tests/oauthentication.py b/djangorestframework/tests/oauthentication.py index b4bcf2fa..29f2c44e 100644 --- a/djangorestframework/tests/oauthentication.py +++ b/djangorestframework/tests/oauthentication.py @@ -27,7 +27,7 @@ else: urlpatterns = patterns('', url(r'^$', oauth_required(ClientView.as_view())), url(r'^oauth/', include('oauth_provider.urls')), - url(r'^accounts/login/$', 'djangorestframework.utils.staticviews.api_login'), + url(r'^restframework/', include('djangorestframework.urls', namespace='djangorestframework')), ) diff --git a/djangorestframework/tests/renderers.py b/djangorestframework/tests/renderers.py index 9a02d0a9..3ed5ab28 100644 --- a/djangorestframework/tests/renderers.py +++ b/djangorestframework/tests/renderers.py @@ -1,6 +1,6 @@ import re -from django.conf.urls.defaults import patterns, url +from django.conf.urls.defaults import patterns, url, include from django.test import TestCase from djangorestframework import status @@ -73,6 +73,7 @@ urlpatterns = patterns('', url(r'^jsonp/nojsonrenderer$', MockGETView.as_view(renderers=[JSONPRenderer])), url(r'^html$', HTMLView.as_view()), url(r'^html1$', HTMLView1.as_view()), + url(r'^api', include('djangorestframework.urls', namespace='djangorestframework')) ) diff --git a/djangorestframework/tests/views.py b/djangorestframework/tests/views.py index d4189087..418b4b16 100644 --- a/djangorestframework/tests/views.py +++ b/djangorestframework/tests/views.py @@ -1,4 +1,5 @@ -from django.conf.urls.defaults import patterns, url +from django.core.urlresolvers import reverse +from django.conf.urls.defaults import patterns, url, include from django.http import HttpResponse from django.test import TestCase from django.test import Client @@ -45,14 +46,13 @@ class MockResource(ModelResource): model = MockResourceModel fields = ('foo', 'bar', 'baz') -urlpatterns = patterns('djangorestframework.utils.staticviews', - url(r'^accounts/login$', 'api_login'), - url(r'^accounts/logout$', 'api_logout'), +urlpatterns = patterns('', url(r'^mock/$', MockView.as_view()), url(r'^mock/final/$', MockViewFinal.as_view()), url(r'^resourcemock/$', ResourceMockView.as_view()), url(r'^model/$', ListOrCreateModelView.as_view(resource=MockResource)), url(r'^model/(?P[^/]+)/$', InstanceModelView.as_view(resource=MockResource)), + url(r'^restframework/', include('djangorestframework.urls', namespace='djangorestframework')), ) class BaseViewTests(TestCase): @@ -123,13 +123,13 @@ class ExtraViewsTests(TestCase): def test_login_view(self): """Ensure the login view exists""" - response = self.client.get('/accounts/login') + response = self.client.get(reverse('djangorestframework:login')) self.assertEqual(response.status_code, 200) self.assertEqual(response['Content-Type'].split(';')[0], 'text/html') def test_logout_view(self): """Ensure the logout view exists""" - response = self.client.get('/accounts/logout') + response = self.client.get(reverse('djangorestframework:logout')) self.assertEqual(response.status_code, 200) self.assertEqual(response['Content-Type'].split(';')[0], 'text/html') diff --git a/djangorestframework/urls.py b/djangorestframework/urls.py index 5c797bcd..3fa813ea 100644 --- a/djangorestframework/urls.py +++ b/djangorestframework/urls.py @@ -1,6 +1,9 @@ -from django.conf.urls.defaults import patterns +from django.conf.urls.defaults import patterns, url -urlpatterns = patterns('djangorestframework.utils.staticviews', - (r'^accounts/login/$', 'api_login'), - (r'^accounts/logout/$', 'api_logout'), + +template_name = {'template_name': 'djangorestframework/login.html'} + +urlpatterns = patterns('django.contrib.auth.views', + url(r'^login/$', 'login', template_name, name='login'), + url(r'^logout/$', 'logout', template_name, name='logout'), ) -- cgit v1.2.3