Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 8 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,13 @@ python:
- "pypy"

env:
- "$DJANGO='django<2'"
- deps='django<1.9 djangorestframework<3.7'
- deps='django<2'

matrix:
include:
- python: "3.6"
env: deps='django<2.1'

sudo: false

Expand All @@ -15,7 +21,7 @@ before_install:

# command to install dependencies, e.g. pip install -r requirements.txt --use-mirrors
install:
- pip install $DJANGO
- pip install $deps
- pip install -r requirements-dev.txt
- pip install coveralls==1.1 # travis pypy not compatible with later versions
- pip freeze
Expand Down
6 changes: 4 additions & 2 deletions test_project/generic/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,10 @@ def __str__(self):
@six.python_2_unicode_compatible
class ModelB(models.Model):
name = models.CharField(max_length=64)
a = models.ForeignKey(ModelA, blank=True, null=True, related_name='rel_b')
content_type = models.ForeignKey(ContentType, related_name='+')
a = models.ForeignKey(ModelA, blank=True, null=True, related_name='rel_b',
on_delete=models.CASCADE)
content_type = models.ForeignKey(ContentType, related_name='+',
on_delete=models.CASCADE)
object_id = models.PositiveIntegerField()
content_object = GenericForeignKey('content_type', 'object_id')

Expand Down
3 changes: 2 additions & 1 deletion test_project/many_to_one/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@ def __str__(self):
class Article(models.Model):
headline = models.CharField(max_length=100)
pub_date = models.DateField()
reporter = models.ForeignKey(Reporter, related_name='articles')
reporter = models.ForeignKey(Reporter, related_name='articles',
on_delete=models.CASCADE)

def __str__(self):
return self.headline
Expand Down
5 changes: 3 additions & 2 deletions test_project/one_to_one/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ def __str__(self):

@six.python_2_unicode_compatible
class Restaurant(models.Model):
place = models.OneToOneField(Place, primary_key=True)
place = models.OneToOneField(Place, primary_key=True,
on_delete=models.CASCADE)
serves_hot_dogs = models.BooleanField(default=False)
serves_pizza = models.BooleanField(default=False)

Expand All @@ -26,7 +27,7 @@ def __str__(self):

@six.python_2_unicode_compatible
class Waiter(models.Model):
restaurant = models.ForeignKey(Restaurant)
restaurant = models.ForeignKey(Restaurant, on_delete=models.CASCADE)
name = models.CharField(max_length=50)

def __str__(self):
Expand Down
3 changes: 3 additions & 0 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
[tox]
envlist =
{py27,py36,pypy}-django{18,11}
py36-django20
# 1.9 breaks pypy3 hence only testing with 18
# scandir fails to install in pypy3 so skippint for now
# {pypy3}-django{18}
Expand All @@ -19,7 +20,9 @@ commands =
make check
deps =
django18: django<1.9
django18: djangorestframework<3.7
django11: django<2
django20: django<2.1
whitelist_externals =
make

Expand Down
5 changes: 4 additions & 1 deletion url_filter/filtersets/django.py
Original file line number Diff line number Diff line change
Expand Up @@ -122,8 +122,11 @@ def _build_filterset_from_related_field(self, field):
Build a :class:`.FilterSet` for a Django relation model field
such as ``ForeignKey``.
"""
# field.rel for Django < 1.9
remote_field = getattr(field, 'remote_field', None) or field.rel

return self._build_django_filterset(field, {
'exclude': [field.rel.name],
'exclude': [remote_field.name],
})

def _build_filterset_from_reverse_field(self, field):
Expand Down