Skip to content

Commit

Permalink
Merge pull request #52 from copperleaftech/django-2.0
Browse files Browse the repository at this point in the history
Make compatible with Django 2.0
  • Loading branch information
miki725 authored Feb 25, 2018
2 parents 1a6ea28 + adfc279 commit 48314cb
Show file tree
Hide file tree
Showing 6 changed files with 24 additions and 8 deletions.
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

0 comments on commit 48314cb

Please sign in to comment.