Django Authentication: Restricting Access with 'is_authenticated' and ReadOnly Functionality
Here is an example of using the 'is_authenticated' attribute in a Django view to only allow authenticated users to access a certain page, and to only allow them to view the page (not make any changes):
from django.shortcuts import render
from django.contrib.auth.decorators import login_required
@login_required(login_url='/login/')
def my_view(request):
# This view requires authentication to access
# and only allows read-only access
# your view logic here
return render(request, 'my_template.html', context)
In this example, the '@login_required' decorator is used to ensure that only authenticated users can access the view. If a user who is not authenticated tries to access the view, they will be redirected to the login page (specified by the 'login_url' argument).
The 'is_authenticated' attribute is a built-in attribute of the 'User' model in Django that is set to 'True' if the user is authenticated, and 'False' otherwise. By using the '@login_required' decorator, we can be sure that the 'is_authenticated' attribute will always be 'True' for the 'request.user' object inside the view.
原文地址: https://www.cveoy.top/t/topic/mx5k 著作权归作者所有。请勿转载和采集!