mirror of
https://github.com/daniviga/django-ram.git
synced 2026-03-21 15:52:30 +01:00
Add a custom manager to filter private and unpublished stuff (#39)
* Implement a customer manager for flatpages * Implement public manager for private objects * Add support for unpublished objects in roster and consist * Add support for unpublished objects in bookshelf * Update filtering on REST views * Use uuid in urls.py * Increment version
This commit is contained in:
19
ram/ram/managers.py
Normal file
19
ram/ram/managers.py
Normal file
@@ -0,0 +1,19 @@
|
||||
from django.db import models
|
||||
from django.core.exceptions import FieldError
|
||||
|
||||
|
||||
class PublicManager(models.Manager):
|
||||
def get_published(self, user):
|
||||
if user.is_authenticated:
|
||||
return self.get_queryset()
|
||||
else:
|
||||
return self.get_queryset().filter(published=True)
|
||||
|
||||
def get_public(self, user):
|
||||
if user.is_authenticated:
|
||||
return self.get_queryset()
|
||||
else:
|
||||
try:
|
||||
return self.get_queryset().filter(private=False)
|
||||
except FieldError:
|
||||
return self.get_queryset().filter(property__private=False)
|
||||
Reference in New Issue
Block a user