guardian.forms.
UserObjectPermissionsForm
(user, *args, **kwargs)¶Bases: guardian.forms.BaseObjectPermissionsForm
Object level permissions management form for usage with User
instances.
Example usage:
from django.shortcuts import get_object_or_404
from myapp.models import Post
from guardian.forms import UserObjectPermissionsForm
from django.contrib.auth.models import User
def my_view(request, post_slug, user_id):
user = get_object_or_404(User, id=user_id)
post = get_object_or_404(Post, slug=post_slug)
form = UserObjectPermissionsForm(user, post, request.POST or None)
if request.method == 'POST' and form.is_valid():
form.save_obj_perms()
...
save_obj_perms
()¶Saves selected object permissions by creating new ones and removing those which were not selected but already exists.
Should be called after form is validated.
guardian.forms.
GroupObjectPermissionsForm
(group, *args, **kwargs)¶Bases: guardian.forms.BaseObjectPermissionsForm
Object level permissions management form for usage with Group
instances.
Example usage:
from django.shortcuts import get_object_or_404
from myapp.models import Post
from guardian.forms import GroupObjectPermissionsForm
from guardian.models import Group
def my_view(request, post_slug, group_id):
group = get_object_or_404(Group, id=group_id)
post = get_object_or_404(Post, slug=post_slug)
form = GroupObjectPermissionsForm(group, post, request.POST or None)
if request.method == 'POST' and form.is_valid():
form.save_obj_perms()
...
save_obj_perms
()¶Saves selected object permissions by creating new ones and removing those which were not selected but already exists.
Should be called after form is validated.
guardian.forms.
BaseObjectPermissionsForm
(obj, *args, **kwargs)¶Base form for object permissions management. Needs to be extended for usage with users and/or groups.
Parameters: | obj – Any instance which form would use to manage object permissions” |
---|
are_obj_perms_required
()¶Indicates if at least one object permission should be required. Default:
False
.
get_obj_perms_field
()¶Returns field instance for object permissions management. May be replaced entirely.
get_obj_perms_field_choices
()¶Returns choices for object permissions management field. Default:
list of tuples (codename, name)
for each Permission
instance
for the managed object.
get_obj_perms_field_class
()¶Returns object permissions management field’s base class. Default:
django.forms.MultipleChoiceField
.
get_obj_perms_field_initial
()¶Returns initial object permissions management field choices. Default:
[]
(empty list).
get_obj_perms_field_label
()¶Returns label of the object permissions management field. Defualt:
_("Permissions")
(marked to be translated).
get_obj_perms_field_name
()¶Returns name of the object permissions management field. Default:
permission
.
get_obj_perms_field_widget
()¶Returns object permissions management field’s widget base class.
Default: django.forms.SelectMultiple
.
save_obj_perms
()¶Must be implemented in concrete form class. This method should store selected object permissions.