Commit 9da85bddb4ec6df5a2497486a1baf16f704d022c
Committed by
GitHub
1 parent
fd96281a
Added compatibility with latest Django master
Showing
6 changed files
with
36 additions
and
18 deletions
| ... | ... | @@ -2,8 +2,11 @@ from importlib import import_module |
| 2 | 2 | |
| 3 | 3 | from django.apps import apps |
| 4 | 4 | from django.conf import settings |
| 5 | -from django.core import urlresolvers | |
| 6 | 5 | from django.core.exceptions import ImproperlyConfigured |
| 6 | +try: | |
| 7 | + from django.urls import reverse | |
| 8 | +except ImportError: | |
| 9 | + from django.core.urlresolvers import reverse # Django < 1.10 | |
| 7 | 10 | |
| 8 | 11 | |
| 9 | 12 | DEFAULT_COMMENTS_APP = 'django_comments' |
| ... | ... | @@ -68,7 +71,7 @@ def get_form_target(): |
| 68 | 71 | if get_comment_app_name() != DEFAULT_COMMENTS_APP and hasattr(get_comment_app(), "get_form_target"): |
| 69 | 72 | return get_comment_app().get_form_target() |
| 70 | 73 | else: |
| 71 | - return urlresolvers.reverse("comments-post-comment") | |
| 74 | + return reverse("comments-post-comment") | |
| 72 | 75 | |
| 73 | 76 | |
| 74 | 77 | def get_flag_url(comment): |
| ... | ... | @@ -78,7 +81,7 @@ def get_flag_url(comment): |
| 78 | 81 | if get_comment_app_name() != DEFAULT_COMMENTS_APP and hasattr(get_comment_app(), "get_flag_url"): |
| 79 | 82 | return get_comment_app().get_flag_url(comment) |
| 80 | 83 | else: |
| 81 | - return urlresolvers.reverse("comments-flag", args=(comment.id,)) | |
| 84 | + return reverse("comments-flag", args=(comment.id,)) | |
| 82 | 85 | |
| 83 | 86 | |
| 84 | 87 | def get_delete_url(comment): |
| ... | ... | @@ -88,7 +91,7 @@ def get_delete_url(comment): |
| 88 | 91 | if get_comment_app_name() != DEFAULT_COMMENTS_APP and hasattr(get_comment_app(), "get_delete_url"): |
| 89 | 92 | return get_comment_app().get_delete_url(comment) |
| 90 | 93 | else: |
| 91 | - return urlresolvers.reverse("comments-delete", args=(comment.id,)) | |
| 94 | + return reverse("comments-delete", args=(comment.id,)) | |
| 92 | 95 | |
| 93 | 96 | |
| 94 | 97 | def get_approve_url(comment): |
| ... | ... | @@ -98,4 +101,4 @@ def get_approve_url(comment): |
| 98 | 101 | if get_comment_app_name() != DEFAULT_COMMENTS_APP and hasattr(get_comment_app(), "get_approve_url"): |
| 99 | 102 | return get_comment_app().get_approve_url(comment) |
| 100 | 103 | else: |
| 101 | - return urlresolvers.reverse("comments-approve", args=(comment.id,)) | |
| 104 | + return reverse("comments-approve", args=(comment.id,)) | ... | ... |
| ... | ... | @@ -4,11 +4,14 @@ from django.conf import settings |
| 4 | 4 | from django.contrib.contenttypes.fields import GenericForeignKey |
| 5 | 5 | from django.contrib.contenttypes.models import ContentType |
| 6 | 6 | from django.contrib.sites.models import Site |
| 7 | -from django.core import urlresolvers | |
| 8 | 7 | from django.db import models |
| 9 | 8 | from django.utils import timezone |
| 10 | 9 | from django.utils.encoding import python_2_unicode_compatible |
| 11 | 10 | from django.utils.translation import ugettext_lazy as _ |
| 11 | +try: | |
| 12 | + from django.urls import reverse | |
| 13 | +except ImportError: | |
| 14 | + from django.core.urlresolvers import reverse # Django < 1.10 | |
| 12 | 15 | |
| 13 | 16 | from .managers import CommentManager |
| 14 | 17 | |
| ... | ... | @@ -39,7 +42,7 @@ class BaseCommentAbstractModel(models.Model): |
| 39 | 42 | """ |
| 40 | 43 | Get a URL suitable for redirecting to the content object. |
| 41 | 44 | """ |
| 42 | - return urlresolvers.reverse( | |
| 45 | + return reverse( | |
| 43 | 46 | "comments-url-redirect", |
| 44 | 47 | args=(self.content_type_id, self.object_pk) |
| 45 | 48 | ) | ... | ... |
| ... | ... | @@ -40,7 +40,11 @@ def post_comment(request, next=None, using=None): |
| 40 | 40 | """ |
| 41 | 41 | # Fill out some initial data fields from an authenticated user, if present |
| 42 | 42 | data = request.POST.copy() |
| 43 | - if request.user.is_authenticated(): | |
| 43 | + try: | |
| 44 | + user_is_authenticated = request.user.is_authenticated() | |
| 45 | + except TypeError: # Django >= 1.11 | |
| 46 | + user_is_authenticated = request.user.is_authenticated | |
| 47 | + if user_is_authenticated: | |
| 44 | 48 | if not data.get('name', ''): |
| 45 | 49 | data["name"] = request.user.get_full_name() or request.user.get_username() |
| 46 | 50 | if not data.get('email', ''): |
| ... | ... | @@ -103,7 +107,7 @@ def post_comment(request, next=None, using=None): |
| 103 | 107 | # Otherwise create the comment |
| 104 | 108 | comment = form.get_comment_object(site_id=get_current_site(request).id) |
| 105 | 109 | comment.ip_address = request.META.get("REMOTE_ADDR", None) |
| 106 | - if request.user.is_authenticated(): | |
| 110 | + if user_is_authenticated: | |
| 107 | 111 | comment.user = request.user |
| 108 | 112 | |
| 109 | 113 | # Signal that the comment is about to be saved | ... | ... |
| 1 | -from django.core import urlresolvers | |
| 1 | +try: | |
| 2 | + from django.urls import reverse | |
| 3 | +except ImportError: | |
| 4 | + from django.core.urlresolvers import reverse # Django < 1.10 | |
| 2 | 5 | |
| 3 | 6 | from . import views |
| 4 | 7 | from .forms import CustomCommentForm |
| ... | ... | @@ -14,16 +17,16 @@ def get_form(): |
| 14 | 17 | |
| 15 | 18 | |
| 16 | 19 | def get_form_target(): |
| 17 | - return urlresolvers.reverse(views.custom_submit_comment) | |
| 20 | + return reverse(views.custom_submit_comment) | |
| 18 | 21 | |
| 19 | 22 | |
| 20 | 23 | def get_flag_url(c): |
| 21 | - return urlresolvers.reverse(views.custom_flag_comment, args=(c.id,)) | |
| 24 | + return reverse(views.custom_flag_comment, args=(c.id,)) | |
| 22 | 25 | |
| 23 | 26 | |
| 24 | 27 | def get_delete_url(c): |
| 25 | - return urlresolvers.reverse(views.custom_delete_comment, args=(c.id,)) | |
| 28 | + return reverse(views.custom_delete_comment, args=(c.id,)) | |
| 26 | 29 | |
| 27 | 30 | |
| 28 | 31 | def get_approve_url(c): |
| 29 | - return urlresolvers.reverse(views.custom_approve_comment, args=(c.id,)) | |
| 32 | + return reverse(views.custom_approve_comment, args=(c.id,)) | ... | ... |
| ... | ... | @@ -25,11 +25,16 @@ settings.configure( |
| 25 | 25 | "testapp", |
| 26 | 26 | "custom_comments", |
| 27 | 27 | ], |
| 28 | - MIDDLEWARE_CLASSES=( | |
| 28 | + MIDDLEWARE=( | |
| 29 | 29 | 'django.contrib.sessions.middleware.SessionMiddleware', |
| 30 | 30 | 'django.contrib.auth.middleware.AuthenticationMiddleware', |
| 31 | 31 | 'django.contrib.messages.middleware.MessageMiddleware', |
| 32 | 32 | ), |
| 33 | + MIDDLEWARE_CLASSES=( | |
| 34 | + 'django.contrib.sessions.middleware.SessionMiddleware', | |
| 35 | + 'django.contrib.auth.middleware.AuthenticationMiddleware', | |
| 36 | + 'django.contrib.messages.middleware.MessageMiddleware', | |
| 37 | + ), # Django < 1.10 | |
| 33 | 38 | ROOT_URLCONF='testapp.urls', |
| 34 | 39 | TEMPLATES=[ |
| 35 | 40 | { | ... | ... |
| 1 | -from django.conf.urls import include, url | |
| 1 | +from django.conf.urls import url | |
| 2 | 2 | from django.contrib import admin |
| 3 | 3 | from django_comments.admin import CommentsAdmin |
| 4 | 4 | from django_comments.models import Comment |
| ... | ... | @@ -14,6 +14,6 @@ admin_site2.disable_action('delete_selected') |
| 14 | 14 | admin_site2.register(Comment, CommentsAdmin) |
| 15 | 15 | |
| 16 | 16 | urlpatterns = [ |
| 17 | - url(r'^admin/', include(admin_site.urls)), | |
| 18 | - url(r'^admin2/', include(admin_site2.urls)), | |
| 17 | + url(r'^admin/', admin_site.urls), | |
| 18 | + url(r'^admin2/', admin_site2.urls), | |
| 19 | 19 | ] | ... | ... |
Please
register
or
login
to post a comment