2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-07-01 11:10:54 +00:00

Merge branch 'inventree:master' into matmair/issue2385

This commit is contained in:
Matthias Mair
2022-05-02 21:50:52 +02:00
committed by GitHub
143 changed files with 39337 additions and 29974 deletions

View File

@ -5,7 +5,7 @@ JSON API for the plugin app
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.conf.urls import url, include
from django.urls import include, re_path
from rest_framework import generics
from rest_framework import status
@ -118,18 +118,18 @@ class PluginSettingDetail(generics.RetrieveUpdateAPIView):
plugin_api_urls = [
# Plugin settings URLs
url(r'^settings/', include([
url(r'^(?P<pk>\d+)/', PluginSettingDetail.as_view(), name='api-plugin-setting-detail'),
url(r'^.*$', PluginSettingList.as_view(), name='api-plugin-setting-list'),
re_path(r'^settings/', include([
re_path(r'^(?P<pk>\d+)/', PluginSettingDetail.as_view(), name='api-plugin-setting-detail'),
re_path(r'^.*$', PluginSettingList.as_view(), name='api-plugin-setting-list'),
])),
# Detail views for a single PluginConfig item
url(r'^(?P<pk>\d+)/', include([
url(r'^.*$', PluginDetail.as_view(), name='api-plugin-detail'),
re_path(r'^(?P<pk>\d+)/', include([
re_path(r'^.*$', PluginDetail.as_view(), name='api-plugin-detail'),
])),
url(r'^install/', PluginInstall.as_view(), name='api-plugin-install'),
re_path(r'^install/', PluginInstall.as_view(), name='api-plugin-install'),
# Anything else
url(r'^.*$', PluginList.as_view(), name='api-plugin-list'),
re_path(r'^.*$', PluginList.as_view(), name='api-plugin-list'),
]

View File

@ -5,7 +5,7 @@ import logging
from django.apps import AppConfig
from django.conf import settings
from django.utils.translation import ugettext_lazy as _
from django.utils.translation import gettext_lazy as _
from maintenance_mode.core import set_maintenance_mode

View File

@ -6,7 +6,7 @@ import logging
import json
import requests
from django.conf.urls import url, include
from django.urls import include, re_path
from django.db.utils import OperationalError, ProgrammingError
from plugin.models import PluginConfig, PluginSetting
@ -303,7 +303,7 @@ class UrlsMixin:
Urlpatterns for this plugin
"""
if self.has_urls:
return url(f'^{self.slug}/', include((self.urls, self.slug)), name=self.slug)
return re_path(f'^{self.slug}/', include((self.urls, self.slug)), name=self.slug)
return None
@property

View File

@ -7,7 +7,7 @@ from __future__ import unicode_literals
import logging
from django.utils.translation import ugettext_lazy as _
from django.utils.translation import gettext_lazy as _
from django.conf import settings
from django.db import transaction

View File

@ -11,7 +11,7 @@ import pathlib
from django.urls.base import reverse
from django.conf import settings
from django.utils.translation import ugettext_lazy as _
from django.utils.translation import gettext_lazy as _
import plugin.plugin as plugin_base
from plugin.helpers import get_git_log, GitStatus

View File

@ -17,7 +17,7 @@ from importlib import reload
from django.apps import apps
from django.conf import settings
from django.db.utils import OperationalError, ProgrammingError, IntegrityError
from django.conf.urls import url, include
from django.urls import include, re_path
from django.urls import clear_url_caches
from django.contrib import admin
from django.utils.text import slugify
@ -570,12 +570,12 @@ class PluginsRegistry:
for index, a in enumerate(urlpatterns):
if hasattr(a, 'app_name'):
if a.app_name == 'admin':
urlpatterns[index] = url(r'^admin/', admin.site.urls, name='inventree-admin')
urlpatterns[index] = re_path(r'^admin/', admin.site.urls, name='inventree-admin')
elif a.app_name == 'plugin':
urlpatterns[index] = get_plugin_urls()
# replace frontendpatterns
global_pattern[0] = url('', include(urlpatterns))
global_pattern[0] = re_path('', include(urlpatterns))
clear_url_caches()
def _reload_apps(self, force_reload: bool = False):

View File

@ -6,8 +6,8 @@ from plugin import IntegrationPluginBase
from plugin.mixins import AppMixin, SettingsMixin, UrlsMixin, NavigationMixin
from django.http import HttpResponse
from django.utils.translation import ugettext_lazy as _
from django.conf.urls import url, include
from django.utils.translation import gettext_lazy as _
from django.urls import include, re_path
class SampleIntegrationPlugin(AppMixin, SettingsMixin, UrlsMixin, NavigationMixin, IntegrationPluginBase):
@ -28,13 +28,13 @@ class SampleIntegrationPlugin(AppMixin, SettingsMixin, UrlsMixin, NavigationMixi
def setup_urls(self):
he_urls = [
url(r'^he/', self.view_test, name='he'),
url(r'^ha/', self.view_test, name='ha'),
re_path(r'^he/', self.view_test, name='he'),
re_path(r'^ha/', self.view_test, name='ha'),
]
return [
url(r'^hi/', self.view_test, name='hi'),
url(r'^ho/', include(he_urls), name='ho'),
re_path(r'^hi/', self.view_test, name='hi'),
re_path(r'^ho/', include(he_urls), name='ho'),
]
SETTINGS = {

View File

@ -10,7 +10,7 @@ import subprocess
from django.core.exceptions import ValidationError
from django.conf import settings
from django.utils.translation import ugettext_lazy as _
from django.utils.translation import gettext_lazy as _
from django.utils import timezone
from rest_framework import serializers

View File

@ -2,7 +2,7 @@
from django.test import TestCase
from django.conf import settings
from django.conf.urls import url, include
from django.urls import include, re_path
from django.contrib.auth import get_user_model
from datetime import datetime
@ -66,7 +66,7 @@ class UrlsMixinTest(BaseMixinDefinition, TestCase):
class UrlsCls(UrlsMixin, IntegrationPluginBase):
def test():
return 'ccc'
URLS = [url('testpath', test, name='test'), ]
URLS = [re_path('testpath', test, name='test'), ]
self.mixin = UrlsCls()
class NoUrlsCls(UrlsMixin, IntegrationPluginBase):
@ -81,7 +81,7 @@ class UrlsMixinTest(BaseMixinDefinition, TestCase):
self.assertEqual(self.mixin.base_url, target_url)
# urlpattern
target_pattern = url(f'^{plg_name}/', include((self.mixin.urls, plg_name)), name=plg_name)
target_pattern = re_path(f'^{plg_name}/', include((self.mixin.urls, plg_name)), name=plg_name)
self.assertEqual(self.mixin.urlpatterns.reverse_dict, target_pattern.reverse_dict)
# resolve the view

View File

@ -2,7 +2,7 @@
URL lookup for plugin app
"""
from django.conf.urls import url, include
from django.urls import include, re_path
from plugin import registry
@ -21,4 +21,4 @@ def get_plugin_urls():
if plugin.mixin_enabled('urls'):
urls.append(plugin.urlpatterns)
return url(f'^{PLUGIN_BASE}/', include((urls, 'plugin')))
return re_path(f'^{PLUGIN_BASE}/', include((urls, 'plugin')))