Пример #1
0
 def testView(self):
     """
     Check that login_required is assignable to normal views.
     """
     def normal_view(request):
         pass
     login_required(normal_view)
Пример #2
0
 def testCallable(self):
     """
     Check that login_required is assignable to callable objects.
     """
     class CallableView(object):
         def __call__(self, *args, **kwargs):
             pass
     login_required(CallableView())
Пример #3
0
            message = "POST data has errors"
    else:
        form = TestForm()
        message = "GET form page"
    return render_to_response("form_view.html", {"form": form, "message": message})


def login_protected_view(request):
    "A simple view that is login protected."
    t = Template("This is a login protected test. Username is {{ user.username }}.", name="Login Template")
    c = Context({"user": request.user})

    return HttpResponse(t.render(c))


login_protected_view = login_required(login_protected_view)


def login_protected_view_changed_redirect(request):
    "A simple view that is login protected with a custom redirect field set"
    t = Template("This is a login protected test. Username is {{ user.username }}.", name="Login Template")
    c = Context({"user": request.user})

    return HttpResponse(t.render(c))


login_protected_view_changed_redirect = login_required(redirect_field_name="redirect_to")(
    login_protected_view_changed_redirect
)

Пример #4
0
def no_template_view(request):
    "A simple view that expects a GET request, and returns a rendered template"
    return HttpResponse("No template used. Sample content: twice once twice. Content ends.")

def staff_only_view(request):
    "A view that can only be visited by staff. Non staff members get an exception"
    if request.user.is_staff:
        return HttpResponse('')
    else:
        raise SuspiciousOperation()

def get_view(request):
    "A simple login protected view"
    return HttpResponse("Hello world")
get_view = login_required(get_view)

def request_data(request, template='base.html', data='sausage'):
    "A simple view that returns the request data in the context"
    return render_to_response(template, {
        'get-foo':request.GET.get('foo',None),
        'get-bar':request.GET.get('bar',None),
        'post-foo':request.POST.get('foo',None),
        'post-bar':request.POST.get('bar',None),
        'request-foo':request.REQUEST.get('foo',None),
        'request-bar':request.REQUEST.get('bar',None),
        'data': data,
    })

def view_with_argument(request, name):
    """A view that takes a string argument
Пример #5
0
def auth_processor_perms(request):
    return render_to_response('context_processors/auth_attrs_perms.html',
        RequestContext(request, {}, processors=[context_processors.auth]))

def auth_processor_messages(request):
    info(request, "Message 1")
    return render_to_response('context_processors/auth_attrs_messages.html',
         RequestContext(request, {}, processors=[context_processors.auth]))

def userpage(request):
    pass

# special urls for auth test cases
urlpatterns = urlpatterns + patterns('',
    (r'^logout/custom_query/$', 'djangocg.contrib.auth.views.logout', dict(redirect_field_name='follow')),
    (r'^logout/next_page/$', 'djangocg.contrib.auth.views.logout', dict(next_page='/somewhere/')),
    (r'^remote_user/$', remote_user_auth_view),
    (r'^password_reset_from_email/$', 'djangocg.contrib.auth.views.password_reset', dict(from_email='*****@*****.**')),
    (r'^login_required/$', login_required(password_reset)),
    (r'^login_required_login_url/$', login_required(password_reset, login_url='/somewhere/')),

    (r'^auth_processor_no_attr_access/$', auth_processor_no_attr_access),
    (r'^auth_processor_attr_access/$', auth_processor_attr_access),
    (r'^auth_processor_user/$', auth_processor_user),
    (r'^auth_processor_perms/$', auth_processor_perms),
    (r'^auth_processor_messages/$', auth_processor_messages),
    url(r'^userpage/(.+)/$', userpage, name="userpage"),
)