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