Added option to disable sortable foreign key filtering.
parent
fee0ba81b0
commit
1a96bb0d21
|
|
@ -68,11 +68,11 @@ class Sortable(models.Model):
|
||||||
|
|
||||||
super(Sortable, self).save(*args, **kwargs)
|
super(Sortable, self).save(*args, **kwargs)
|
||||||
|
|
||||||
def _filter_objects(self, filters, extra_filters):
|
def _filter_objects(self, filters, extra_filters, filter_on_sortable_fk):
|
||||||
if extra_filters:
|
if extra_filters:
|
||||||
filters.update(extra_filters)
|
filters.update(extra_filters)
|
||||||
|
|
||||||
if self.sortable_foreign_key:
|
if self.sortable_foreign_key and filter_on_sortable_fk:
|
||||||
# sfk_obj == sortable foreign key instance
|
# sfk_obj == sortable foreign key instance
|
||||||
sfk_obj = getattr(self, self.sortable_foreign_key.name)
|
sfk_obj = getattr(self, self.sortable_foreign_key.name)
|
||||||
filters.update(
|
filters.update(
|
||||||
|
|
@ -85,10 +85,10 @@ class Sortable(models.Model):
|
||||||
|
|
||||||
return obj
|
return obj
|
||||||
|
|
||||||
def get_next(self, extra_filters={}):
|
def get_next(self, extra_filters={}, filter_on_sortable_fk=True):
|
||||||
return self._filter_objects({'order__gt': self.order},
|
return self._filter_objects({'order__gt': self.order},
|
||||||
extra_filters)
|
extra_filters)
|
||||||
|
|
||||||
def get_previous(self, extra_filters={}):
|
def get_previous(self, extra_filters={}, filter_on_sortable_fk=True):
|
||||||
return self._filter_objects({'order__lt': self.order},
|
return self._filter_objects({'order__lt': self.order},
|
||||||
extra_filters)
|
extra_filters)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue