Commit 0c436e72 authored by Serge S. Koval's avatar Serge S. Koval

Merge pull request #195 from matchbox/get_queryset_method

refactor `self.models.objects` into a method
parents fe47ff72 4f85f0d9
...@@ -240,6 +240,13 @@ class ModelView(BaseModelView): ...@@ -240,6 +240,13 @@ class ModelView(BaseModelView):
return form_class return form_class
def get_queryset(self):
"""
Returns the QuerySet for this view. By default, it returns all the
objects for the current model.
"""
return self.model.objects
def get_list(self, page, sort_column, sort_desc, search, filters, def get_list(self, page, sort_column, sort_desc, search, filters,
execute=True): execute=True):
""" """
...@@ -258,7 +265,7 @@ class ModelView(BaseModelView): ...@@ -258,7 +265,7 @@ class ModelView(BaseModelView):
:param execute: :param execute:
Run query immediately or not Run query immediately or not
""" """
query = self.model.objects query = self.get_queryset()
# Filters # Filters
if self._filters: if self._filters:
...@@ -312,7 +319,7 @@ class ModelView(BaseModelView): ...@@ -312,7 +319,7 @@ class ModelView(BaseModelView):
:param id: :param id:
Model ID Model ID
""" """
return self.model.objects.with_id(id) return self.get_queryset().filter(pk=id).first()
def create_model(self, form): def create_model(self, form):
""" """
...@@ -386,7 +393,7 @@ class ModelView(BaseModelView): ...@@ -386,7 +393,7 @@ class ModelView(BaseModelView):
count = 0 count = 0
all_ids = [ObjectId(pk) for pk in ids] all_ids = [ObjectId(pk) for pk in ids]
for obj in self.model.objects.in_bulk(all_ids).values(): for obj in self.get_queryset().in_bulk(all_ids).values():
obj.delete() obj.delete()
count += 1 count += 1
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment