mirror of
https://github.com/Hopiu/wagtail.git
synced 2026-04-15 12:31:00 +00:00
Fixes Django 2.1 breaking changes; QUERY_TERMS & auth_views.login()
This commit is contained in:
parent
986f03748a
commit
a657a75cd7
5 changed files with 39 additions and 2 deletions
23
.travis.yml
23
.travis.yml
|
|
@ -29,6 +29,10 @@ matrix:
|
|||
sudo: true
|
||||
- env: TOXENV=py35-dj20-sqlite-noelasticsearch
|
||||
python: 3.5
|
||||
- env: TOXENV=py35-dj21-sqlite-noelasticsearch
|
||||
python: 3.5
|
||||
- env: TOXENV=py35-dj21-mysql-noelasticsearch
|
||||
python: 3.5
|
||||
- env: TOXENV=py36-dj111-sqlite-noelasticsearch
|
||||
python: 3.6
|
||||
- env: TOXENV=py36-dj111-postgres-noelasticsearch
|
||||
|
|
@ -37,33 +41,52 @@ matrix:
|
|||
python: 3.6
|
||||
- env: TOXENV=py36-dj20-postgres-noelasticsearch
|
||||
python: 3.6
|
||||
- env: TOXENV=py36-dj21-postgres-noelasticsearch
|
||||
python: 3.6
|
||||
- env: TOXENV=py36-dj111-postgres-elasticsearch2 INSTALL_ELASTICSEARCH2=yes
|
||||
python: 3.6
|
||||
sudo: true
|
||||
- env: TOXENV=py36-dj20-sqlite-elasticsearch2 INSTALL_ELASTICSEARCH2=yes
|
||||
python: 3.6
|
||||
sudo: true
|
||||
- env: TOXENV=py36-dj21-sqlite-elasticsearch2 INSTALL_ELASTICSEARCH2=yes
|
||||
python: 3.6
|
||||
sudo: true
|
||||
- env: TOXENV=py36-dj111-postgres-elasticsearch5 INSTALL_ELASTICSEARCH5=yes
|
||||
python: 3.6
|
||||
sudo: true
|
||||
- env: TOXENV=py36-dj20-postgres-elasticsearch5 INSTALL_ELASTICSEARCH5=yes
|
||||
python: 3.6
|
||||
sudo: true
|
||||
- env: TOXENV=py36-dj21-postgres-elasticsearch5 INSTALL_ELASTICSEARCH5=yes
|
||||
python: 3.6
|
||||
sudo: true
|
||||
- env: TOXENV=py36-dj111-postgres-elasticsearch6 INSTALL_ELASTICSEARCH6=yes
|
||||
python: 3.6
|
||||
sudo: true
|
||||
- env: TOXENV=py36-dj20-postgres-elasticsearch6 INSTALL_ELASTICSEARCH6=yes
|
||||
python: 3.6
|
||||
sudo: true
|
||||
- env: TOXENV=py36-dj21-postgres-elasticsearch6 INSTALL_ELASTICSEARCH6=yes
|
||||
python: 3.6
|
||||
sudo: true
|
||||
allow_failures:
|
||||
# Ignore failures on Elasticsearch tests because ES on Travis is intermittently flaky
|
||||
- env: TOXENV=py35-dj111-postgres-elasticsearch2 INSTALL_ELASTICSEARCH2=yes
|
||||
- env: TOXENV=py36-dj111-postgres-elasticsearch2 INSTALL_ELASTICSEARCH2=yes
|
||||
- env: TOXENV=py36-dj20-sqlite-elasticsearch2 INSTALL_ELASTICSEARCH2=yes
|
||||
- env: TOXENV=py36-dj21-sqlite-elasticsearch2 INSTALL_ELASTICSEARCH2=yes
|
||||
- env: TOXENV=py36-dj111-postgres-elasticsearch5 INSTALL_ELASTICSEARCH5=yes
|
||||
- env: TOXENV=py36-dj20-postgres-elasticsearch5 INSTALL_ELASTICSEARCH5=yes
|
||||
- env: TOXENV=py36-dj21-postgres-elasticsearch5 INSTALL_ELASTICSEARCH5=yes
|
||||
- env: TOXENV=py36-dj111-postgres-elasticsearch6 INSTALL_ELASTICSEARCH6=yes
|
||||
- env: TOXENV=py36-dj20-postgres-elasticsearch6 INSTALL_ELASTICSEARCH6=yes
|
||||
- env: TOXENV=py36-dj21-postgres-elasticsearch6 INSTALL_ELASTICSEARCH6=yes
|
||||
# Django 2.1 support is in progress
|
||||
- env: TOXENV=py35-dj21-sqlite-noelasticsearch
|
||||
- env: TOXENV=py35-dj21-mysql-noelasticsearch
|
||||
- env: TOXENV=py36-dj21-postgres-noelasticsearch
|
||||
|
||||
|
||||
# Services
|
||||
services:
|
||||
|
|
|
|||
|
|
@ -311,6 +311,7 @@ Contributors
|
|||
* Andrew Crewdson
|
||||
* Aram Dulyan
|
||||
* Kevin Howbrook
|
||||
* Ryan Verner
|
||||
|
||||
Translators
|
||||
===========
|
||||
|
|
|
|||
2
tox.ini
2
tox.ini
|
|
@ -43,6 +43,8 @@ deps =
|
|||
dj111: Django>=1.11b1,<2.0
|
||||
dj111-mssql: django-pyodbc-azure==1.11.0.0
|
||||
dj20: Django>=2.0,<2.1
|
||||
dj21: git+https://github.com/django/django.git@2.1rc1#egg=Django
|
||||
|
||||
postgres: psycopg2>=2.6
|
||||
mysql: mysqlclient==1.3.6
|
||||
elasticsearch2: elasticsearch>=2,<3
|
||||
|
|
|
|||
|
|
@ -15,7 +15,6 @@ from django.db import models
|
|||
from django.db.models.constants import LOOKUP_SEP
|
||||
from django.db.models.fields import FieldDoesNotExist
|
||||
from django.db.models.fields.related import ForeignObjectRel, ManyToManyField
|
||||
from django.db.models.sql.constants import QUERY_TERMS
|
||||
from django.shortcuts import get_object_or_404, redirect
|
||||
from django.template.defaultfilters import filesizeformat
|
||||
from django.utils.decorators import method_decorator
|
||||
|
|
@ -34,6 +33,18 @@ from wagtail.admin.edit_handlers import ObjectList, extract_panel_definitions_fr
|
|||
from .forms import ParentChooserForm
|
||||
|
||||
|
||||
try:
|
||||
from django.db.models.sql.constants import QUERY_TERMS
|
||||
except ImportError:
|
||||
# Django 2.1+ does not have QUERY_TERMS anymore
|
||||
QUERY_TERMS = {
|
||||
'contains', 'day', 'endswith', 'exact', 'gt', 'gte', 'hour',
|
||||
'icontains', 'iendswith', 'iexact', 'in', 'iregex', 'isnull',
|
||||
'istartswith', 'lt', 'lte', 'minute', 'month', 'range', 'regex',
|
||||
'search', 'second', 'startswith', 'week_day', 'year',
|
||||
}
|
||||
|
||||
|
||||
class WMABaseView(TemplateView):
|
||||
"""
|
||||
Groups together common functionality for all app views.
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ WAGTAIL_FRONTEND_LOGIN_TEMPLATE = getattr(
|
|||
urlpatterns = [
|
||||
url(r'^_util/authenticate_with_password/(\d+)/(\d+)/$', views.authenticate_with_password,
|
||||
name='wagtailcore_authenticate_with_password'),
|
||||
url(r'^_util/login/$', auth_views.login, {'template_name': WAGTAIL_FRONTEND_LOGIN_TEMPLATE},
|
||||
url(r'^_util/login/$', auth_views.LoginView.as_view(template_name=WAGTAIL_FRONTEND_LOGIN_TEMPLATE),
|
||||
name='wagtailcore_login'),
|
||||
|
||||
# Front-end page views are handled through Wagtail's core.views.serve
|
||||
|
|
|
|||
Loading…
Reference in a new issue