Skip to content
This repository has been archived by the owner on Dec 17, 2019. It is now read-only.

Commit

Permalink
Merge pull request #210 from mythmon/django-18
Browse files Browse the repository at this point in the history
Replace render_to_response with render for better Django 1.8 compatibility.
  • Loading branch information
Mike Cooper committed Feb 12, 2016
2 parents cc52b83 + 78611eb commit 7e6c420
Show file tree
Hide file tree
Showing 5 changed files with 66 additions and 51 deletions.
10 changes: 10 additions & 0 deletions .travis.yml
Expand Up @@ -7,6 +7,16 @@ python:
env:
- DB=mysql DJANGO_VERSION=1.4
- DB=mysql DJANGO_VERSION=1.5
- DB=mysql DJANGO_VERSION=1.6
- DB=mysql DJANGO_VERSION=1.7
- DB=mysql DJANGO_VERSION=1.8

matrix:
exclude:
- python: "2.6"
env: DB=mysql DJANGO_VERSION=1.8
- python: "2.6"
env: DB=mysql DJANGO_VERSION=1.7

before_install:
- sudo apt-get update -qq
Expand Down
2 changes: 1 addition & 1 deletion badger/__init__.py
Expand Up @@ -7,7 +7,7 @@
from badger.models import Badge, Award, Progress


# Default settings follow, overridden with BADGER_ prefix in settings.py
# Default settings follow, overridden with BADGER_ prefix in settings.py
TEMPLATE_BASE = 'badger'

# Skip baking for now (Issue #139)
Expand Down
16 changes: 8 additions & 8 deletions badger/tests/test_views.py
Expand Up @@ -65,7 +65,7 @@ def test_badge_detail(self):
data = json.loads(r.content)
eq_(badge.title, data['name'])
eq_(badge.description, data['description'])
eq_('http://testserver%s' % badge.get_absolute_url(),
eq_('http://testserver%s' % badge.get_absolute_url(),
data['criteria'])

@attr('json')
Expand Down Expand Up @@ -99,11 +99,11 @@ def test_award_detail(self):
.hexdigest())

eq_(recipient_hash, data['recipient'])
eq_('http://testserver%s' % award.get_absolute_url(),
eq_('http://testserver%s' % award.get_absolute_url(),
data['evidence'])
eq_(award.badge.title, data['badge']['name'])
eq_(award.badge.description, data['badge']['description'])
eq_('http://testserver%s' % award.badge.get_absolute_url(),
eq_('http://testserver%s' % award.badge.get_absolute_url(),
data['badge']['criteria'])

def test_awards_by_user(self):
Expand Down Expand Up @@ -210,7 +210,7 @@ def test_award_detail_includes_nomination_autoapproved(self):
def test_issue_award(self):
"""Badge creator can issue award to another user"""
SAMPLE_DESCRIPTION = u'This is a sample description'

user1 = self._get_user(username="creator", email="creator@example.com")
user2 = self._get_user(username="awardee", email="awardee@example.com")

Expand Down Expand Up @@ -246,7 +246,7 @@ def test_issue_award(self):

award = Award.objects.filter(user=user2, badge=b1)[0]
eq_(SAMPLE_DESCRIPTION, award.description)

r = self.client.get(award.get_absolute_url(), follow=True)
eq_(200, r.status_code)

Expand Down Expand Up @@ -326,7 +326,7 @@ def test_deferred_award_immediate_claim(self):
deferred_email = "awardee@example.com"
user1 = self._get_user(username="creator", email="creator@example.com")
b1 = Badge.objects.create(creator=user1, title="Badge to defer")

da = DeferredAward(badge=b1, creator=user1)
da.save()
url = da.get_claim_url()
Expand Down Expand Up @@ -366,7 +366,7 @@ def test_claim_code_shows_awards_after_claim(self):

url = da.get_claim_url()

# Before claim, code URL leads to claim page.
# Before claim, code URL leads to claim page.
r = self.client.get(url, follow=False)
eq_(200, r.status_code)
doc = pq(r.content)
Expand Down Expand Up @@ -408,7 +408,7 @@ def test_grant_deferred_award(self):
deferred_email = "awardee@example.com"
user1 = self._get_user(username="creator", email="creator@example.com")
b1 = Badge.objects.create(creator=user1, title="Badge to defer")

da = DeferredAward(badge=b1, creator=user1, email='foobar@example.com')
da.save()
url = da.get_claim_url()
Expand Down
68 changes: 33 additions & 35 deletions badger/views.py
Expand Up @@ -5,7 +5,7 @@
from django.conf import settings
from django.http import (HttpResponseRedirect, HttpResponse,
HttpResponseForbidden, HttpResponseNotFound, Http404)
from django.shortcuts import get_object_or_404, render_to_response
from django.shortcuts import get_object_or_404, render
from django.template import RequestContext
from django.template.defaultfilters import slugify

Expand Down Expand Up @@ -54,9 +54,9 @@ def home(request):
award_list = Award.objects.order_by('-modified').all()[:bsettings.MAX_RECENT]
badge_tags = Badge.objects.top_tags()

return render_to_response('%s/home.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/home.html' % bsettings.TEMPLATE_BASE, dict(
badge_list=badge_list, award_list=award_list, badge_tags=badge_tags
), context_instance=RequestContext(request))
))


class BadgesListView(ListView):
Expand Down Expand Up @@ -140,10 +140,10 @@ def detail(request, slug, format="html"):
resp['Content-Type'] = 'application/json'
return resp
else:
return render_to_response('%s/badge_detail.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/badge_detail.html' % bsettings.TEMPLATE_BASE, dict(
badge=badge, award_list=awards, sections=sections,
claim_groups=claim_groups
), context_instance=RequestContext(request))
))


@require_http_methods(['GET', 'POST'])
Expand All @@ -166,9 +166,9 @@ def create(request):
return HttpResponseRedirect(reverse(
'badger.views.detail', args=(new_sub.slug,)))

return render_to_response('%s/badge_create.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/badge_create.html' % bsettings.TEMPLATE_BASE, dict(
form=form,
), context_instance=RequestContext(request))
))


@require_http_methods(['GET', 'POST'])
Expand All @@ -190,9 +190,9 @@ def edit(request, slug):
return HttpResponseRedirect(reverse(
'badger.views.detail', args=(new_sub.slug,)))

return render_to_response('%s/badge_edit.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/badge_edit.html' % bsettings.TEMPLATE_BASE, dict(
badge=badge, form=form,
), context_instance=RequestContext(request))
))


@require_http_methods(['GET', 'POST'])
Expand All @@ -211,9 +211,9 @@ def delete(request, slug):
badge.delete()
return HttpResponseRedirect(reverse('badger.views.badges_list'))

return render_to_response('%s/badge_delete.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/badge_delete.html' % bsettings.TEMPLATE_BASE, dict(
badge=badge, awards_count=awards_count,
), context_instance=RequestContext(request))
))


@require_http_methods(['GET', 'POST'])
Expand Down Expand Up @@ -244,9 +244,9 @@ def award_badge(request, slug):
return HttpResponseRedirect(reverse('badger.views.detail',
args=(badge.slug,)))

return render_to_response('%s/badge_award.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/badge_award.html' % bsettings.TEMPLATE_BASE, dict(
form=form, badge=badge,
), context_instance=RequestContext(request))
))


class AwardsListView(ListView):
Expand Down Expand Up @@ -291,9 +291,9 @@ def award_detail(request, slug, id, format="html"):
resp['Content-Type'] = 'application/json'
return resp
else:
return render_to_response('%s/award_detail.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/award_detail.html' % bsettings.TEMPLATE_BASE, dict(
badge=badge, award=award,
), context_instance=RequestContext(request))
))


@require_http_methods(['GET', 'POST'])
Expand All @@ -312,9 +312,9 @@ def award_delete(request, slug, id):
url = reverse('badger.views.detail', kwargs=dict(slug=slug))
return HttpResponseRedirect(url)

return render_to_response('%s/award_delete.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/award_delete.html' % bsettings.TEMPLATE_BASE, dict(
badge=badge, award=award
), context_instance=RequestContext(request))
))


@login_required
Expand Down Expand Up @@ -392,10 +392,10 @@ def claim_deferred_award(request, claim_code=None):
args=(deferred_award.badge.slug,))
return HttpResponseRedirect(url)

return render_to_response('%s/claim_deferred_award.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/claim_deferred_award.html' % bsettings.TEMPLATE_BASE, dict(
badge=deferred_award.badge, deferred_award=deferred_award,
grant_form=grant_form
), context_instance=RequestContext(request))
))


@require_http_methods(['GET', 'POST'])
Expand All @@ -413,30 +413,30 @@ def claims_list(request, slug, claim_group, format="html"):
return render_claims_to_pdf(request, slug, claim_group,
deferred_awards)

return render_to_response('%s/claims_list.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/claims_list.html' % bsettings.TEMPLATE_BASE, dict(
badge=badge, claim_group=claim_group,
deferred_awards=deferred_awards
), context_instance=RequestContext(request))
))


@require_GET
def awards_by_user(request, username):
"""Badge awards by user"""
user = get_object_or_404(User, username=username)
awards = Award.objects.filter(user=user)
return render_to_response('%s/awards_by_user.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/awards_by_user.html' % bsettings.TEMPLATE_BASE, dict(
user=user, award_list=awards,
), context_instance=RequestContext(request))
))


@require_GET
def awards_by_badge(request, slug):
"""Badge awards by badge"""
badge = get_object_or_404(Badge, slug=slug)
awards = Award.objects.filter(badge=badge)
return render_to_response('%s/awards_by_badge.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/awards_by_badge.html' % bsettings.TEMPLATE_BASE, dict(
badge=badge, awards=awards,
), context_instance=RequestContext(request))
))


@require_http_methods(['GET', 'POST'])
Expand Down Expand Up @@ -465,19 +465,19 @@ def staff_tools(request):
url = reverse('badger.views.staff_tools')
return HttpResponseRedirect(url)

return render_to_response('%s/staff_tools.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/staff_tools.html' % bsettings.TEMPLATE_BASE, dict(
grant_form=grant_form
), context_instance=RequestContext(request))
))


@require_GET
def badges_by_user(request, username):
"""Badges created by user"""
user = get_object_or_404(User, username=username)
badges = Badge.objects.filter(creator=user)
return render_to_response('%s/badges_by_user.html' % bsettings.TEMPLATE_BASE, dict(
return render(request, '%s/badges_by_user.html' % bsettings.TEMPLATE_BASE, dict(
user=user, badge_list=badges,
), context_instance=RequestContext(request))
))


@require_http_methods(['GET', 'POST'])
Expand All @@ -501,9 +501,8 @@ def nomination_detail(request, slug, id, format="html"):
'badger.views.nomination_detail',
args=(slug, id)))

return render_to_response('%s/nomination_detail.html' % bsettings.TEMPLATE_BASE,
dict(badge=badge, nomination=nomination,),
context_instance=RequestContext(request))
return render(request, '%s/nomination_detail.html' % bsettings.TEMPLATE_BASE,
dict(badge=badge, nomination=nomination,))


@require_http_methods(['GET', 'POST'])
Expand Down Expand Up @@ -542,6 +541,5 @@ def nominate_for(request, slug):
return HttpResponseRedirect(reverse('badger.views.detail',
args=(badge.slug,)))

return render_to_response('%s/badge_nominate_for.html' % bsettings.TEMPLATE_BASE,
dict(form=form, badge=badge,),
context_instance=RequestContext(request))
return render(request, '%s/badge_nominate_for.html' % bsettings.TEMPLATE_BASE,
dict(form=form, badge=badge,))
21 changes: 14 additions & 7 deletions tox.ini
Expand Up @@ -7,40 +7,47 @@
basepython = python2.6
commands = pip install "Django>=1.4,<1.4.99"
pip install -r requirements/dev.txt
{envpython} manage.py test -v2 badger
{envpython} manage.py test badger

[testenv:py27_dj14]
basepython = python2.7
commands = pip install "Django>=1.4,<1.4.99"
pip install -r requirements/dev.txt
{envpython} manage.py test -v2 badger
{envpython} manage.py test badger

[testenv:py26_dj15]
basepython = python2.6
commands = pip install "Django>=1.5,<1.5.99"
pip install -r requirements/dev.txt
{envpython} manage.py test -v2 badger
{envpython} manage.py test badger

[testenv:py27_dj15]
basepython = python2.7
commands = pip install "Django>=1.5,<1.5.99"
pip install -r requirements/dev.txt
{envpython} manage.py test -v2 badger
{envpython} manage.py test badger

[testenv:py26_dj16]
basepython = python2.6
commands = pip install "Django>=1.6,<1.6.99"
pip install -r requirements/dev.txt
{envpython} manage.py test -v2 badger
{envpython} manage.py test badger

[testenv:py27_dj16]
basepython = python2.7
commands = pip install "Django>=1.6,<1.6.99"
pip install -r requirements/dev.txt
{envpython} manage.py test -v2 badger
{envpython} manage.py test badger

[testenv:py27_dj17]
basepython = python2.7
commands = pip install "Django>=1.7,<1.7.99"
pip install -r requirements/dev.txt
{envpython} manage.py test -v2 badger
{envpython} manage.py test badger


[testenv:py27_dj18]
basepython = python2.7
commands = pip install "Django>=1.8,<1.8.99"
pip install -r requirements/dev.txt
{envpython} manage.py test badger

0 comments on commit 7e6c420

Please sign in to comment.