Skip to content
This repository was archived by the owner on May 1, 2024. It is now read-only.

Commit 2bfdfe6

Browse files
zubairshakoorarbisoftMuhammad Soban Javed
authored andcommitted
fix: Added support for django42
1 parent c129b11 commit 2bfdfe6

15 files changed

Lines changed: 70 additions & 75 deletions

File tree

analytics_data_api/urls.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
from django.conf.urls import include, url
1+
from django.urls import include, re_path
22
from rest_framework.urlpatterns import format_suffix_patterns
33

44
app_name = 'analytics_data_api'
55

66
urlpatterns = [
7-
url(r'^v0/', include('analytics_data_api.v0.urls')),
8-
url(r'^v1/', include('analytics_data_api.v1.urls')),
7+
re_path(r'^v0/', include('analytics_data_api.v0.urls')),
8+
re_path(r'^v1/', include('analytics_data_api.v1.urls')),
99
]
1010

1111
urlpatterns = format_suffix_patterns(urlpatterns)

analytics_data_api/v0/__init__.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +0,0 @@
1-
default_app_config = 'analytics_data_api.v0.apps.ApiAppConfig'

analytics_data_api/v0/models.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ class Meta(BaseCourseModel.Meta):
135135

136136
module_id = models.CharField(db_index=True, max_length=255)
137137
part_id = models.CharField(db_index=True, max_length=255)
138-
correct = models.NullBooleanField()
138+
correct = models.BooleanField(default=None, null=True)
139139
value_id = models.CharField(db_index=True, max_length=255, null=True)
140140
answer_value = models.TextField(null=True, db_column='answer_value_text')
141141
variant = models.IntegerField(null=True)
Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
1-
from django.conf.urls import include, url
2-
from django.urls import reverse_lazy
1+
from django.urls import include, path, reverse_lazy
32
from django.views.generic import RedirectView
43

54
app_name = 'analytics_data_api.v0'
65

76
COURSE_ID_PATTERN = r'(?P<course_id>[^/+]+[/+][^/+]+[/+][^/]+)'
87

98
urlpatterns = [
10-
url(r'^courses/', include('analytics_data_api.v0.urls.courses')),
11-
url(r'^problems/', include('analytics_data_api.v0.urls.problems')),
12-
url(r'^videos/', include('analytics_data_api.v0.urls.videos')),
13-
url('^', include('analytics_data_api.v0.urls.learners')),
14-
url('^', include('analytics_data_api.v0.urls.course_summaries')),
15-
url('^', include('analytics_data_api.v0.urls.programs')),
9+
path('courses/', include('analytics_data_api.v0.urls.courses')),
10+
path('problems/', include('analytics_data_api.v0.urls.problems')),
11+
path('videos/', include('analytics_data_api.v0.urls.videos')),
12+
path('', include('analytics_data_api.v0.urls.learners')),
13+
path('', include('analytics_data_api.v0.urls.course_summaries')),
14+
path('', include('analytics_data_api.v0.urls.programs')),
1615

1716
# pylint: disable=no-value-for-parameter
18-
url(r'^authenticated/$', RedirectView.as_view(url=reverse_lazy('authenticated')), name='authenticated'),
19-
url(r'^health/$', RedirectView.as_view(url=reverse_lazy('health')), name='health'),
20-
url(r'^status/$', RedirectView.as_view(url=reverse_lazy('status')), name='status'),
17+
path('authenticated/', RedirectView.as_view(url=reverse_lazy('authenticated')), name='authenticated'),
18+
path('health/', RedirectView.as_view(url=reverse_lazy('health')), name='health'),
19+
path('status/', RedirectView.as_view(url=reverse_lazy('status')), name='status'),
2120
]
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
from django.conf.urls import url
1+
from django.urls import re_path
22

33
from analytics_data_api.v0.views import course_summaries as views
44

55
app_name = 'course_summaries'
66

77
urlpatterns = [
8-
url(r'^course_summaries/$', views.CourseSummariesView.as_view(), name='course_summaries'),
8+
re_path(r'^course_summaries/$', views.CourseSummariesView.as_view(), name='course_summaries'),
99
]

analytics_data_api/v0/urls/courses.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from django.conf.urls import url
1+
from django.urls import re_path
22

33
from analytics_data_api.v0.urls import COURSE_ID_PATTERN
44
from analytics_data_api.v0.views import courses as views
@@ -25,4 +25,4 @@
2525

2626
for path, view, name in COURSE_URLS:
2727
regex = fr'^{COURSE_ID_PATTERN}/{path}/$'
28-
urlpatterns.append(url(regex, view.as_view(), name=name))
28+
urlpatterns.append(re_path(regex, view.as_view(), name=name))
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from django.conf.urls import url
1+
from django.urls import re_path
22

33
from analytics_data_api.constants.learner import UUID_REGEX_PATTERN
44
from analytics_data_api.v0.views import learners as views
@@ -8,6 +8,6 @@
88
USERNAME_PATTERN = r'(?P<username>[\w.+-]+)'
99

1010
urlpatterns = [
11-
url(fr'^enterprise/(?P<enterprise_customer>{UUID_REGEX_PATTERN})/engagements/$',
12-
views.EnterpriseLearnerEngagementView.as_view(), name='engagements'),
11+
re_path(fr'^enterprise/(?P<enterprise_customer>{UUID_REGEX_PATTERN})/engagements/$',
12+
views.EnterpriseLearnerEngagementView.as_view(), name='engagements'),
1313
]
Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import re
22

3-
from django.conf.urls import url
3+
from django.urls import re_path
44

55
from analytics_data_api.v0.views import problems as views
66

@@ -12,9 +12,10 @@
1212
]
1313

1414
urlpatterns = [
15-
url(r'^(?P<module_id>.+)/sequential_open_distribution/$',
16-
views.SequentialOpenDistributionView.as_view(), name='sequential_open_distribution'),
15+
re_path(r'^(?P<module_id>.+)/sequential_open_distribution/$',
16+
views.SequentialOpenDistributionView.as_view(),
17+
name='sequential_open_distribution'),
1718
]
1819

1920
for path, view, name in PROBLEM_URLS:
20-
urlpatterns.append(url(r'^(?P<problem_id>.+)/' + re.escape(path) + r'/$', view.as_view(), name=name))
21+
urlpatterns.append(re_path(r'^(?P<problem_id>.+)/' + re.escape(path) + r'/$', view.as_view(), name=name))
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
from django.conf.urls import url
1+
from django.urls import path
22

33
from analytics_data_api.v0.views import programs as views
44

55
app_name = 'programs'
66

77
urlpatterns = [
8-
url(r'^programs/$', views.ProgramsView.as_view(), name='programs'),
8+
path('programs/', views.ProgramsView.as_view(), name='programs'),
99
]

analytics_data_api/v0/urls/videos.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import re
22

3-
from django.conf.urls import url
3+
from django.urls import re_path
44

55
from analytics_data_api.v0.views import videos as views
66

@@ -13,4 +13,4 @@
1313
urlpatterns = []
1414

1515
for path, view, name in VIDEO_URLS:
16-
urlpatterns.append(url(r'^(?P<video_id>.+)/' + re.escape(path) + r'/$', view.as_view(), name=name))
16+
urlpatterns.append(re_path(r'^(?P<video_id>.+)/' + re.escape(path) + r'/$', view.as_view(), name=name))

0 commit comments

Comments
 (0)