Merge pull request #66 from jedie/django3.1

Update to Django 3.1.x
pull/69/head
Jens Diemer 2021-10-09 16:14:26 +02:00 zatwierdzone przez GitHub
commit 1fa48a2bcf
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 4AEE18F83AFDEB23
13 zmienionych plików z 642 dodań i 530 usunięć

29
poetry.lock wygenerowano
Wyświetl plik

@ -1,3 +1,17 @@
[[package]]
name = "asgiref"
version = "3.4.1"
description = "ASGI specs, helper code, and adapters"
category = "main"
optional = false
python-versions = ">=3.6"
[package.dependencies]
typing-extensions = {version = "*", markers = "python_version < \"3.8\""}
[package.extras]
tests = ["pytest", "pytest-asyncio", "mypy (>=0.800)"]
[[package]]
name = "astor"
version = "0.8.1"
@ -313,13 +327,14 @@ python-versions = "*"
[[package]]
name = "django"
version = "2.2.24"
version = "3.1.13"
description = "A high-level Python Web framework that encourages rapid development and clean, pragmatic design."
category = "main"
optional = false
python-versions = ">=3.5"
python-versions = ">=3.6"
[package.dependencies]
asgiref = ">=3.2.10,<4"
pytz = "*"
sqlparse = ">=0.2.2"
@ -1472,9 +1487,13 @@ psycopg2-source = ["psycopg2"]
[metadata]
lock-version = "1.1"
python-versions = ">=3.7,<4.0.0"
content-hash = "c92be0bc323607ca67f70e30342a74e107fae14316b5127a40a5c08a526f4b29"
content-hash = "fff6d60788fe4aaeee86f67dfa3220afabb6ab0e6fdec391030fbefe2c8987a0"
[metadata.files]
asgiref = [
{file = "asgiref-3.4.1-py3-none-any.whl", hash = "sha256:ffc141aa908e6f175673e7b1b3b7af4fdb0ecb738fc5c8b88f69f055c2415214"},
{file = "asgiref-3.4.1.tar.gz", hash = "sha256:4ef1ab46b484e3c706329cedeff284a5d40824200638503f5768edb6de7d58e9"},
]
astor = [
{file = "astor-0.8.1-py2.py3-none-any.whl", hash = "sha256:070a54e890cefb5b3739d19f30f5a5ec840ffc9c50ffa7d23cc9fc1a38ebbfc5"},
{file = "astor-0.8.1.tar.gz", hash = "sha256:6a6effda93f4e1ce9f618779b2dd1d9d84f1e32812c23a29b3fff6fd7f63fa5e"},
@ -1696,8 +1715,8 @@ distro = [
{file = "distro-1.6.0.tar.gz", hash = "sha256:83f5e5a09f9c5f68f60173de572930effbcc0287bb84fdc4426cb4168c088424"},
]
django = [
{file = "Django-2.2.24-py3-none-any.whl", hash = "sha256:f2084ceecff86b1e631c2cd4107d435daf4e12f1efcdf11061a73bf0b5e95f92"},
{file = "Django-2.2.24.tar.gz", hash = "sha256:3339ff0e03dee13045aef6ae7b523edff75b6d726adf7a7a48f53d5a501f7db7"},
{file = "Django-3.1.13-py3-none-any.whl", hash = "sha256:a6e0d1ff11095b7394c079ade7094c73b2dc3df4a7a373c9b58ed73b77a97feb"},
{file = "Django-3.1.13.tar.gz", hash = "sha256:9f8be75646f62204320b195062b1d696ba28aa3d45ee72fb7c888ffaebc5bdb2"},
]
django-admin-sortable2 = [
{file = "django-admin-sortable2-1.0.2.tar.gz", hash = "sha256:669e47c908d1ae5dd77876bb6bf369b3c333e013b98f0a8b6da42da83cf6440c"},

Wyświetl plik

@ -37,9 +37,8 @@ python = ">=3.7,<4.0.0"
colorlog = "*" # https://github.com/borntyping/python-colorlog
gunicorn = "*" # https://github.com/benoimyproject.wsgitc/gunicorn
#
# https://www.djangoproject.com/download/#supported-versions
# v2.2 LTS - extended support until April 2022
django = "2.2.*"
# Stay with Django 3.1.x because of: https://github.com/radiac/django-tagulous/issues/144
django = "<3.2"
django-processinfo = "*" # https://github.com/jedie/django-processinfo/
django-debug-toolbar = "*" # http://django-debug-toolbar.readthedocs.io/en/stable/changes.html
django-import-export = "*" # https://github.com/django-import-export/django-import-export

Wyświetl plik

@ -5,7 +5,7 @@ from adminsortable2.admin import SortableInlineAdminMixin
from django.contrib import admin
from django.template.loader import render_to_string
from django.utils.html import format_html
from django.utils.translation import ugettext_lazy as _
from django.utils.translation import gettext_lazy as _
from import_export.admin import ImportExportMixin
from import_export.resources import ModelResource

Wyświetl plik

@ -4,7 +4,7 @@ import tagulous.models
from bx_django_utils.models.timetracking import TimetrackingBaseModel
from django.conf import settings
from django.db import models
from django.utils.translation import ugettext_lazy as _
from django.utils.translation import gettext_lazy as _
class BaseModel(TimetrackingBaseModel):

Wyświetl plik

@ -6,7 +6,7 @@ from bx_django_utils.filename import clean_filename
from ckeditor_uploader.fields import RichTextUploadingField
from django.db import models
from django.urls import reverse
from django.utils.translation import ugettext_lazy as _
from django.utils.translation import gettext_lazy as _
from django_tools.serve_media_app.models import user_directory_path
from inventory.models.base import BaseItemAttachmentModel, BaseModel

Wyświetl plik

@ -5,7 +5,7 @@ import requests
from django.db import models
from django.template.defaultfilters import striptags
from django.utils import timezone
from django.utils.translation import ugettext_lazy as _
from django.utils.translation import gettext_lazy as _
from inventory.models.base import BaseModel

Wyświetl plik

@ -1,6 +1,6 @@
from ckeditor_uploader.fields import RichTextUploadingField
from django.db import models
from django.utils.translation import ugettext_lazy as _
from django.utils.translation import gettext_lazy as _
from inventory.models.base import BaseModel

Wyświetl plik

@ -5,7 +5,7 @@
import logging
from pathlib import Path as __Path
from django.utils.translation import ugettext_lazy as _
from django.utils.translation import gettext_lazy as _
###############################################################################

Wyświetl plik

@ -183,11 +183,13 @@ def test_pretty_format_html():
def assert_html_response_snapshot(
response: HttpResponse,
status_code: int = 200,
validate: bool = True,
**kwargs
):
data = response.content.decode('utf-8')
validate_html(data)
if validate:
validate_html(data)
data = pretty_format_html(data)
assert_text_snapshot(

Wyświetl plik

@ -83,8 +83,8 @@ class AdminTestCase(HtmlAssertionMixin, TestCase):
item = ItemModel.objects.first()
self.assert_messages(response, expected_messages=[
f'The Item "<a href="/admin/inventory/itemmodel/{item.pk}/change/"> - name</a>"'
f' was added successfully.'
f'The Item <a href="/admin/inventory/itemmodel/{item.pk}/change/"> - name</a>'
' was added successfully.'
])
assert item.user_id == self.normaluser.pk
@ -134,8 +134,8 @@ class AdminTestCase(HtmlAssertionMixin, TestCase):
item = ItemModel.objects.first()
self.assert_messages(response, expected_messages=[
f'The Item "<a href="/admin/inventory/itemmodel/{item.pk}/change/"> - name</a>"'
f' was added successfully.'
f'The Item <a href="/admin/inventory/itemmodel/{item.pk}/change/"> - name</a>'
' was added successfully.'
])
assert item.user_id == self.normaluser.pk
@ -195,7 +195,7 @@ class AdminTestCase(HtmlAssertionMixin, TestCase):
'DEBUG:inventory.admin.item:Display sub items inline',
'DEBUG:inventory.admin.item:Display sub items inline'
]
assert_html_response_snapshot(response=response)
assert_html_response_snapshot(response=response, validate=False)
# Search should disable grouping:
@ -219,4 +219,4 @@ class AdminTestCase(HtmlAssertionMixin, TestCase):
# grouping disabled?
'INFO:inventory.admin.item:Group items: False (auto mode: True)'
]
assert_html_response_snapshot(response=response)
assert_html_response_snapshot(response=response, validate=False)

Wyświetl plik

@ -5,27 +5,30 @@
Select Item to change | PyInventory v0.10.0
</title>
<link href="/static/admin/css/base.css" rel="stylesheet" type="text/css"/>
<link href="/static/admin/css/nav_sidebar.css" rel="stylesheet" type="text/css"/>
<script defer="" src="/static/admin/js/nav_sidebar.js">
</script>
<link href="/static/admin/css/changelists.css" rel="stylesheet" type="text/css"/>
<script src="/admin/jsi18n/" type="text/javascript">
<script src="/admin/jsi18n/">
</script>
<meta content="notranslate" name="google"/>
<meta content="noindex,nofollow" name="robots">
<link href="/static/inventory.css" rel="stylesheet" type="text/css"/>
<script src="/static/admin/js/vendor/jquery/jquery.min.js" type="text/javascript">
<script src="/static/admin/js/vendor/jquery/jquery.min.js">
</script>
<script src="/static/admin/js/jquery.init.js" type="text/javascript">
<script src="/static/admin/js/jquery.init.js">
</script>
<script src="/static/admin/js/core.js" type="text/javascript">
<script src="/static/admin/js/core.js">
</script>
<script src="/static/admin/js/admin/RelatedObjectLookups.js" type="text/javascript">
<script src="/static/admin/js/admin/RelatedObjectLookups.js">
</script>
<script src="/static/admin/js/actions.min.js" type="text/javascript">
<script src="/static/admin/js/actions.min.js">
</script>
<script src="/static/admin/js/urlify.js" type="text/javascript">
<script src="/static/admin/js/urlify.js">
</script>
<script src="/static/admin/js/prepopulate.min.js" type="text/javascript">
<script src="/static/admin/js/prepopulate.min.js">
</script>
<script src="/static/admin/js/vendor/xregexp/xregexp.min.js" type="text/javascript">
<script src="/static/admin/js/vendor/xregexp/xregexp.min.js">
</script>
<meta content="user-scalable=no, width=device-width, initial-scale=1.0, maximum-scale=1.0" name="viewport"/>
<link href="/static/admin/css/responsive.css" rel="stylesheet" type="text/css"/>
@ -74,266 +77,309 @@
</a>
Items
</div>
<!-- Content -->
<div class="flex" id="content">
<h1>
Select Item to change
</h1>
<div id="content-main">
<ul class="object-tools">
<li>
<a class="import_link" href="/admin/inventory/itemmodel/import/">
Import
</a>
</li>
<li>
<a class="export_link" href="/admin/inventory/itemmodel/export/?">
Export
</a>
</li>
<li>
<a class="addlink" href="/admin/inventory/itemmodel/add/">
Add Item
</a>
</li>
</ul>
<div class="module filtered" id="changelist">
<div id="toolbar">
<form id="changelist-search" method="get">
<div>
<!-- DIV needed for valid HTML -->
<label for="searchbar">
<img alt="Search" src="/static/admin/img/search.svg"/>
</label>
<input autofocus="" id="searchbar" name="q" size="40" type="text" value=""/>
<input type="submit" value="Search"/>
<span class="small quiet">
2 results (
<a href="?">
6 total
</a>
)
</span>
<div class="main shifted" id="main">
<button aria-label="Toggle navigation" class="sticky toggle-nav-sidebar" id="toggle-nav-sidebar">
</button>
<nav class="sticky" id="nav-sidebar">
<div class="app-inventory module current-app">
<table>
<caption>
<a class="section" href="/admin/inventory/" title="Models in the Inventory application">
Inventory
</a>
</caption>
<tr class="model-itemmodel current-model">
<th scope="row">
<a aria-current="page" href="/admin/inventory/itemmodel/">
Items
</a>
</th>
<td>
<a class="addlink" href="/admin/inventory/itemmodel/add/">
Add
</a>
</td>
</tr>
<tr class="model-locationmodel">
<th scope="row">
<a href="/admin/inventory/locationmodel/">
Locations
</a>
</th>
<td>
<a class="addlink" href="/admin/inventory/locationmodel/add/">
Add
</a>
</td>
</tr>
</table>
</div>
</nav>
<div class="content">
<!-- Content -->
<div class="flex" id="content">
<h1>
Select Item to change
</h1>
<div id="content-main">
<ul class="object-tools">
<li>
<a class="import_link" href="/admin/inventory/itemmodel/import/">
Import
</a>
</li>
<li>
<a class="export_link" href="/admin/inventory/itemmodel/export/?">
Export
</a>
</li>
<li>
<a class="addlink" href="/admin/inventory/itemmodel/add/">
Add Item
</a>
</li>
</ul>
<div class="module filtered" id="changelist">
<div class="changelist-form-container">
<div id="toolbar">
<form id="changelist-search" method="get">
<div>
<!-- DIV needed for valid HTML -->
<label for="searchbar">
<img alt="Search" src="/static/admin/img/search.svg"/>
</label>
<input autofocus="" id="searchbar" name="q" size="40" type="text" value=""/>
<input type="submit" value="Search"/>
<span class="small quiet">
2 results (
<a href="?">
6 total
</a>
)
</span>
</div>
</form>
</div>
<div class="xfull">
<ul class="toplinks">
<li class="date-back">
<a href="?create_dt__year=2000">
2000
</a>
</li>
<li>
<a href="?create_dt__day=1&create_dt__month=1&create_dt__year=2000">
January 1
</a>
</li>
</ul>
<br class="clear"/>
</div>
<form id="changelist-form" method="post" novalidate="">
MockedCsrfTokenNode
<div class="actions">
<label>
Action:
<select name="action" required="">
<option selected="" value="">
---------
</option>
<option value="delete_selected">
Delete selected Items
</option>
</select>
</label>
<input class="select-across" name="select_across" type="hidden" value="0"/>
<button class="button" name="index" title="Run the selected action" type="submit" value="0">
Go
</button>
<span class="action-counter" data-actions-icnt="2">
0 of 2 selected
</span>
</div>
<div class="results">
<table id="result_list">
<thead>
<tr>
<th class="action-checkbox-column" scope="col">
<div class="text">
<span>
<input id="action-toggle" type="checkbox"/>
</span>
</div>
<div class="clear">
</div>
</th>
<th class="column-_tagulous_display_kind" scope="col">
<div class="text">
<span>
Kind
</span>
</div>
<div class="clear">
</div>
</th>
<th class="column-_tagulous_display_producer" scope="col">
<div class="text">
<span>
Producer
</span>
</div>
<div class="clear">
</div>
</th>
<th class="column-column_item" scope="col">
<div class="text">
<span>
Items
</span>
</div>
<div class="clear">
</div>
</th>
<th class="sortable column-location" scope="col">
<div class="text">
<a href="?o=4">
Location
</a>
</div>
<div class="clear">
</div>
</th>
<th class="sortable column-received_date" scope="col">
<div class="text">
<a href="?o=5">
Received date
</a>
</div>
<div class="clear">
</div>
</th>
<th class="sortable column-update_dt" scope="col">
<div class="text">
<a href="?o=6">
Last update
</a>
</div>
<div class="clear">
</div>
</th>
</tr>
</thead>
<tbody>
<tr>
<td class="action-checkbox">
<input class="action-select" name="_selected_action" type="checkbox" value="00000000-0001-0000-0000-000000000000"/>
</td>
<td class="field-_tagulous_display_kind">
</td>
<td class="field-_tagulous_display_producer">
</td>
<td class="field-column_item">
<strong>
<a href="/admin/inventory/itemmodel/00000000-0001-0000-0000-000000000000/change/">
main item 1
</a>
</strong>
<ul>
<li>
<a href="/admin/inventory/itemmodel/00000000-0001-0001-0000-000000000000/change/">
sub item 1.1
</a>
</li>
<li>
<a href="/admin/inventory/itemmodel/00000000-0001-0002-0000-000000000000/change/">
sub item 1.2
</a>
</li>
</ul>
</td>
<td class="field-location nowrap">
-
</td>
<td class="field-received_date nowrap">
-
</td>
<td class="field-update_dt nowrap">
Jan. 1, 2000, 1:01 a.m.
</td>
</tr>
<tr>
<td class="action-checkbox">
<input class="action-select" name="_selected_action" type="checkbox" value="00000000-0002-0000-0000-000000000000"/>
</td>
<td class="field-_tagulous_display_kind">
</td>
<td class="field-_tagulous_display_producer">
</td>
<td class="field-column_item">
<strong>
<a href="/admin/inventory/itemmodel/00000000-0002-0000-0000-000000000000/change/">
main item 2
</a>
</strong>
<ul>
<li>
<a href="/admin/inventory/itemmodel/00000000-0002-0001-0000-000000000000/change/">
sub item 2.1
</a>
</li>
<li>
<a href="/admin/inventory/itemmodel/00000000-0002-0002-0000-000000000000/change/">
sub item 2.2
</a>
</li>
</ul>
</td>
<td class="field-location nowrap">
-
</td>
<td class="field-received_date nowrap">
-
</td>
<td class="field-update_dt nowrap">
Jan. 1, 2000, 1:04 a.m.
</td>
</tr>
</tbody>
</table>
</div>
<p class="paginator">
2 Items
</p>
</form>
</div>
<div id="changelist-filter">
<h2>
Filter
</h2>
<h3>
By Group Items
</h3>
<ul>
<li class="selected">
<a href="?" title="Automatic">
Automatic
</a>
</li>
<li>
<a href="?grouping=no" title="No">
No
</a>
</li>
</ul>
</div>
</form>
</div>
<div class="xfull">
<ul class="toplinks">
<li class="date-back">
<a href="?create_dt__year=2000">
2000
</a>
</li>
<li>
<a href="?create_dt__day=1&create_dt__month=1&create_dt__year=2000">
January 1
</a>
</li>
</ul>
<br class="clear"/>
</div>
<div id="changelist-filter">
<h2>
Filter
</h2>
<h3>
By Group Items
</h3>
<ul>
<li class="selected">
<a href="?" title="Automatic">
Automatic
</a>
</li>
<li>
<a href="?grouping=no" title="No">
No
</a>
</li>
</ul>
</div>
<form id="changelist-form" method="post" novalidate="">
MockedCsrfTokenNode
<div class="actions">
<label>
Action:
<select name="action" required="">
<option selected="" value="">
---------
</option>
<option value="delete_selected">
Delete selected Items
</option>
</select>
</label>
<input class="select-across" name="select_across" type="hidden" value="0"/>
<button class="button" name="index" title="Run the selected action" type="submit" value="0">
Go
</button>
<span class="action-counter" data-actions-icnt="2">
0 of 2 selected
</span>
</div>
<div class="results">
<table id="result_list">
<thead>
<tr>
<th class="action-checkbox-column" scope="col">
<div class="text">
<span>
<input id="action-toggle" type="checkbox"/>
</span>
</div>
<div class="clear">
</div>
</th>
<th class="column-_tagulous_display_kind" scope="col">
<div class="text">
<span>
Kind
</span>
</div>
<div class="clear">
</div>
</th>
<th class="column-_tagulous_display_producer" scope="col">
<div class="text">
<span>
Producer
</span>
</div>
<div class="clear">
</div>
</th>
<th class="column-column_item" scope="col">
<div class="text">
<span>
Items
</span>
</div>
<div class="clear">
</div>
</th>
<th class="sortable column-location" scope="col">
<div class="text">
<a href="?o=4">
Location
</a>
</div>
<div class="clear">
</div>
</th>
<th class="sortable column-received_date" scope="col">
<div class="text">
<a href="?o=5">
Received date
</a>
</div>
<div class="clear">
</div>
</th>
<th class="sortable column-update_dt" scope="col">
<div class="text">
<a href="?o=6">
Last update
</a>
</div>
<div class="clear">
</div>
</th>
</tr>
</thead>
<tbody>
<tr class="row1">
<td class="action-checkbox">
<input class="action-select" name="_selected_action" type="checkbox" value="00000000-0001-0000-0000-000000000000"/>
</td>
<td class="field-_tagulous_display_kind">
</td>
<td class="field-_tagulous_display_producer">
</td>
<td class="field-column_item">
<strong>
<a href="/admin/inventory/itemmodel/00000000-0001-0000-0000-000000000000/change/">
main item 1
</a>
</strong>
<ul>
<li>
<a href="/admin/inventory/itemmodel/00000000-0001-0001-0000-000000000000/change/">
sub item 1.1
</a>
</li>
<li>
<a href="/admin/inventory/itemmodel/00000000-0001-0002-0000-000000000000/change/">
sub item 1.2
</a>
</li>
</ul>
</td>
<td class="field-location nowrap">
-
</td>
<td class="field-received_date nowrap">
-
</td>
<td class="field-update_dt nowrap">
Jan. 1, 2000, 1:01 a.m.
</td>
</tr>
<tr class="row2">
<td class="action-checkbox">
<input class="action-select" name="_selected_action" type="checkbox" value="00000000-0002-0000-0000-000000000000"/>
</td>
<td class="field-_tagulous_display_kind">
</td>
<td class="field-_tagulous_display_producer">
</td>
<td class="field-column_item">
<strong>
<a href="/admin/inventory/itemmodel/00000000-0002-0000-0000-000000000000/change/">
main item 2
</a>
</strong>
<ul>
<li>
<a href="/admin/inventory/itemmodel/00000000-0002-0001-0000-000000000000/change/">
sub item 2.1
</a>
</li>
<li>
<a href="/admin/inventory/itemmodel/00000000-0002-0002-0000-000000000000/change/">
sub item 2.2
</a>
</li>
</ul>
</td>
<td class="field-location nowrap">
-
</td>
<td class="field-received_date nowrap">
-
</td>
<td class="field-update_dt nowrap">
Jan. 1, 2000, 1:04 a.m.
</td>
</tr>
</tbody>
</table>
</div>
<p class="paginator">
2 Items
</p>
</form>
</div>
<br class="clear"/>
</div>
<!-- END Content -->
<div id="footer">
<a href="https://github.com/jedie/PyInventory">
https://github.com/jedie/PyInventory
</a>
</div>
</div>
<br class="clear"/>
</div>
<!-- END Content -->
<div id="footer">
<a href="https://github.com/jedie/PyInventory">
https://github.com/jedie/PyInventory
</a>
</div>
</div>
<!-- END Container -->

Wyświetl plik

@ -5,27 +5,30 @@
Select Item to change | PyInventory v0.10.0
</title>
<link href="/static/admin/css/base.css" rel="stylesheet" type="text/css"/>
<link href="/static/admin/css/nav_sidebar.css" rel="stylesheet" type="text/css"/>
<script defer="" src="/static/admin/js/nav_sidebar.js">
</script>
<link href="/static/admin/css/changelists.css" rel="stylesheet" type="text/css"/>
<script src="/admin/jsi18n/" type="text/javascript">
<script src="/admin/jsi18n/">
</script>
<meta content="notranslate" name="google"/>
<meta content="noindex,nofollow" name="robots">
<link href="/static/inventory.css" rel="stylesheet" type="text/css"/>
<script src="/static/admin/js/vendor/jquery/jquery.min.js" type="text/javascript">
<script src="/static/admin/js/vendor/jquery/jquery.min.js">
</script>
<script src="/static/admin/js/jquery.init.js" type="text/javascript">
<script src="/static/admin/js/jquery.init.js">
</script>
<script src="/static/admin/js/core.js" type="text/javascript">
<script src="/static/admin/js/core.js">
</script>
<script src="/static/admin/js/admin/RelatedObjectLookups.js" type="text/javascript">
<script src="/static/admin/js/admin/RelatedObjectLookups.js">
</script>
<script src="/static/admin/js/actions.min.js" type="text/javascript">
<script src="/static/admin/js/actions.min.js">
</script>
<script src="/static/admin/js/urlify.js" type="text/javascript">
<script src="/static/admin/js/urlify.js">
</script>
<script src="/static/admin/js/prepopulate.min.js" type="text/javascript">
<script src="/static/admin/js/prepopulate.min.js">
</script>
<script src="/static/admin/js/vendor/xregexp/xregexp.min.js" type="text/javascript">
<script src="/static/admin/js/vendor/xregexp/xregexp.min.js">
</script>
<meta content="user-scalable=no, width=device-width, initial-scale=1.0, maximum-scale=1.0" name="viewport"/>
<link href="/static/admin/css/responsive.css" rel="stylesheet" type="text/css"/>
@ -74,242 +77,285 @@
</a>
Items
</div>
<!-- Content -->
<div class="flex" id="content">
<h1>
Select Item to change
</h1>
<div id="content-main">
<ul class="object-tools">
<li>
<a class="import_link" href="/admin/inventory/itemmodel/import/">
Import
</a>
</li>
<li>
<a class="export_link" href="/admin/inventory/itemmodel/export/?q=sub+item+2.">
Export
</a>
</li>
<li>
<a class="addlink" href="/admin/inventory/itemmodel/add/?_changelist_filters=q%3Dsub%2Bitem%2B2.">
Add Item
</a>
</li>
</ul>
<div class="module filtered" id="changelist">
<div id="toolbar">
<form id="changelist-search" method="get">
<div>
<!-- DIV needed for valid HTML -->
<label for="searchbar">
<img alt="Search" src="/static/admin/img/search.svg"/>
</label>
<input autofocus="" id="searchbar" name="q" size="40" type="text" value="sub item 2."/>
<input type="submit" value="Search"/>
<span class="small quiet">
2 results (
<a href="?">
6 total
</a>
)
</span>
<div class="main shifted" id="main">
<button aria-label="Toggle navigation" class="sticky toggle-nav-sidebar" id="toggle-nav-sidebar">
</button>
<nav class="sticky" id="nav-sidebar">
<div class="app-inventory module current-app">
<table>
<caption>
<a class="section" href="/admin/inventory/" title="Models in the Inventory application">
Inventory
</a>
</caption>
<tr class="model-itemmodel current-model">
<th scope="row">
<a aria-current="page" href="/admin/inventory/itemmodel/">
Items
</a>
</th>
<td>
<a class="addlink" href="/admin/inventory/itemmodel/add/">
Add
</a>
</td>
</tr>
<tr class="model-locationmodel">
<th scope="row">
<a href="/admin/inventory/locationmodel/">
Locations
</a>
</th>
<td>
<a class="addlink" href="/admin/inventory/locationmodel/add/">
Add
</a>
</td>
</tr>
</table>
</div>
</nav>
<div class="content">
<!-- Content -->
<div class="flex" id="content">
<h1>
Select Item to change
</h1>
<div id="content-main">
<ul class="object-tools">
<li>
<a class="import_link" href="/admin/inventory/itemmodel/import/">
Import
</a>
</li>
<li>
<a class="export_link" href="/admin/inventory/itemmodel/export/?q=sub+item+2.">
Export
</a>
</li>
<li>
<a class="addlink" href="/admin/inventory/itemmodel/add/?_changelist_filters=q%3Dsub%2Bitem%2B2.">
Add Item
</a>
</li>
</ul>
<div class="module filtered" id="changelist">
<div class="changelist-form-container">
<div id="toolbar">
<form id="changelist-search" method="get">
<div>
<!-- DIV needed for valid HTML -->
<label for="searchbar">
<img alt="Search" src="/static/admin/img/search.svg"/>
</label>
<input autofocus="" id="searchbar" name="q" size="40" type="text" value="sub item 2."/>
<input type="submit" value="Search"/>
<span class="small quiet">
2 results (
<a href="?">
6 total
</a>
)
</span>
</div>
</form>
</div>
<div class="xfull">
<ul class="toplinks">
<li class="date-back">
<a href="?create_dt__year=2000&q=sub+item+2.">
2000
</a>
</li>
<li>
<a href="?create_dt__day=1&create_dt__month=1&create_dt__year=2000&q=sub+item+2.">
January 1
</a>
</li>
</ul>
<br class="clear"/>
</div>
<form id="changelist-form" method="post" novalidate="">
MockedCsrfTokenNode
<div class="actions">
<label>
Action:
<select name="action" required="">
<option selected="" value="">
---------
</option>
<option value="delete_selected">
Delete selected Items
</option>
</select>
</label>
<input class="select-across" name="select_across" type="hidden" value="0"/>
<button class="button" name="index" title="Run the selected action" type="submit" value="0">
Go
</button>
<span class="action-counter" data-actions-icnt="2">
0 of 2 selected
</span>
</div>
<div class="results">
<table id="result_list">
<thead>
<tr>
<th class="action-checkbox-column" scope="col">
<div class="text">
<span>
<input id="action-toggle" type="checkbox"/>
</span>
</div>
<div class="clear">
</div>
</th>
<th class="column-_tagulous_display_kind" scope="col">
<div class="text">
<span>
Kind
</span>
</div>
<div class="clear">
</div>
</th>
<th class="column-_tagulous_display_producer" scope="col">
<div class="text">
<span>
Producer
</span>
</div>
<div class="clear">
</div>
</th>
<th class="column-column_item" scope="col">
<div class="text">
<span>
Items
</span>
</div>
<div class="clear">
</div>
</th>
<th class="sortable column-location" scope="col">
<div class="text">
<a href="?o=4&q=sub+item+2.">
Location
</a>
</div>
<div class="clear">
</div>
</th>
<th class="sortable column-received_date" scope="col">
<div class="text">
<a href="?o=5&q=sub+item+2.">
Received date
</a>
</div>
<div class="clear">
</div>
</th>
<th class="sortable column-update_dt" scope="col">
<div class="text">
<a href="?o=6&q=sub+item+2.">
Last update
</a>
</div>
<div class="clear">
</div>
</th>
</tr>
</thead>
<tbody>
<tr>
<td class="action-checkbox">
<input class="action-select" name="_selected_action" type="checkbox" value="00000000-0002-0001-0000-000000000000"/>
</td>
<td class="field-_tagulous_display_kind">
</td>
<td class="field-_tagulous_display_producer">
</td>
<td class="field-column_item">
<strong>
<a href="/admin/inventory/itemmodel/00000000-0002-0001-0000-000000000000/change/">
sub item 2.1
</a>
</strong>
</td>
<td class="field-location nowrap">
-
</td>
<td class="field-received_date nowrap">
-
</td>
<td class="field-update_dt nowrap">
Jan. 1, 2000, 1:05 a.m.
</td>
</tr>
<tr>
<td class="action-checkbox">
<input class="action-select" name="_selected_action" type="checkbox" value="00000000-0002-0002-0000-000000000000"/>
</td>
<td class="field-_tagulous_display_kind">
</td>
<td class="field-_tagulous_display_producer">
</td>
<td class="field-column_item">
<strong>
<a href="/admin/inventory/itemmodel/00000000-0002-0002-0000-000000000000/change/">
sub item 2.2
</a>
</strong>
</td>
<td class="field-location nowrap">
-
</td>
<td class="field-received_date nowrap">
-
</td>
<td class="field-update_dt nowrap">
Jan. 1, 2000, 1:06 a.m.
</td>
</tr>
</tbody>
</table>
</div>
<p class="paginator">
2 Items
</p>
</form>
</div>
<div id="changelist-filter">
<h2>
Filter
</h2>
<h3>
By Group Items
</h3>
<ul>
<li class="selected">
<a href="?q=sub+item+2." title="Automatic">
Automatic
</a>
</li>
<li>
<a href="?grouping=no&q=sub+item+2." title="No">
No
</a>
</li>
</ul>
</div>
</form>
</div>
<div class="xfull">
<ul class="toplinks">
<li class="date-back">
<a href="?create_dt__year=2000&q=sub+item+2.">
2000
</a>
</li>
<li>
<a href="?create_dt__day=1&create_dt__month=1&create_dt__year=2000&q=sub+item+2.">
January 1
</a>
</li>
</ul>
<br class="clear"/>
</div>
<div id="changelist-filter">
<h2>
Filter
</h2>
<h3>
By Group Items
</h3>
<ul>
<li class="selected">
<a href="?q=sub+item+2." title="Automatic">
Automatic
</a>
</li>
<li>
<a href="?grouping=no&q=sub+item+2." title="No">
No
</a>
</li>
</ul>
</div>
<form id="changelist-form" method="post" novalidate="">
MockedCsrfTokenNode
<div class="actions">
<label>
Action:
<select name="action" required="">
<option selected="" value="">
---------
</option>
<option value="delete_selected">
Delete selected Items
</option>
</select>
</label>
<input class="select-across" name="select_across" type="hidden" value="0"/>
<button class="button" name="index" title="Run the selected action" type="submit" value="0">
Go
</button>
<span class="action-counter" data-actions-icnt="2">
0 of 2 selected
</span>
</div>
<div class="results">
<table id="result_list">
<thead>
<tr>
<th class="action-checkbox-column" scope="col">
<div class="text">
<span>
<input id="action-toggle" type="checkbox"/>
</span>
</div>
<div class="clear">
</div>
</th>
<th class="column-_tagulous_display_kind" scope="col">
<div class="text">
<span>
Kind
</span>
</div>
<div class="clear">
</div>
</th>
<th class="column-_tagulous_display_producer" scope="col">
<div class="text">
<span>
Producer
</span>
</div>
<div class="clear">
</div>
</th>
<th class="column-column_item" scope="col">
<div class="text">
<span>
Items
</span>
</div>
<div class="clear">
</div>
</th>
<th class="sortable column-location" scope="col">
<div class="text">
<a href="?o=4&q=sub+item+2.">
Location
</a>
</div>
<div class="clear">
</div>
</th>
<th class="sortable column-received_date" scope="col">
<div class="text">
<a href="?o=5&q=sub+item+2.">
Received date
</a>
</div>
<div class="clear">
</div>
</th>
<th class="sortable column-update_dt" scope="col">
<div class="text">
<a href="?o=6&q=sub+item+2.">
Last update
</a>
</div>
<div class="clear">
</div>
</th>
</tr>
</thead>
<tbody>
<tr class="row1">
<td class="action-checkbox">
<input class="action-select" name="_selected_action" type="checkbox" value="00000000-0002-0001-0000-000000000000"/>
</td>
<td class="field-_tagulous_display_kind">
</td>
<td class="field-_tagulous_display_producer">
</td>
<td class="field-column_item">
<strong>
<a href="/admin/inventory/itemmodel/00000000-0002-0001-0000-000000000000/change/">
sub item 2.1
</a>
</strong>
</td>
<td class="field-location nowrap">
-
</td>
<td class="field-received_date nowrap">
-
</td>
<td class="field-update_dt nowrap">
Jan. 1, 2000, 1:05 a.m.
</td>
</tr>
<tr class="row2">
<td class="action-checkbox">
<input class="action-select" name="_selected_action" type="checkbox" value="00000000-0002-0002-0000-000000000000"/>
</td>
<td class="field-_tagulous_display_kind">
</td>
<td class="field-_tagulous_display_producer">
</td>
<td class="field-column_item">
<strong>
<a href="/admin/inventory/itemmodel/00000000-0002-0002-0000-000000000000/change/">
sub item 2.2
</a>
</strong>
</td>
<td class="field-location nowrap">
-
</td>
<td class="field-received_date nowrap">
-
</td>
<td class="field-update_dt nowrap">
Jan. 1, 2000, 1:06 a.m.
</td>
</tr>
</tbody>
</table>
</div>
<p class="paginator">
2 Items
</p>
</form>
</div>
<br class="clear"/>
</div>
<!-- END Content -->
<div id="footer">
<a href="https://github.com/jedie/PyInventory">
https://github.com/jedie/PyInventory
</a>
</div>
</div>
<br class="clear"/>
</div>
<!-- END Content -->
<div id="footer">
<a href="https://github.com/jedie/PyInventory">
https://github.com/jedie/PyInventory
</a>
</div>
</div>
<!-- END Container -->

Wyświetl plik

@ -1,5 +1,5 @@
from django.conf import settings
from django.conf.urls import include, static, url
from django.conf.urls import include, re_path, static
from django.contrib import admin
from django.urls import path
from django.views.generic import RedirectView
@ -10,7 +10,7 @@ admin.autodiscover()
urlpatterns = [ # Don't use i18n_patterns() here
path('admin/', admin.site.urls),
url(r'^$', RedirectView.as_view(pattern_name='admin:index')),
re_path(r'^$', RedirectView.as_view(pattern_name='admin:index')),
path('ckeditor/', include('ckeditor_uploader.urls')), # TODO: check permissions?
path(settings.MEDIA_URL.lstrip('/'), include('django_tools.serve_media_app.urls')),
@ -23,4 +23,4 @@ if settings.SERVE_FILES:
if settings.DEBUG:
import debug_toolbar
urlpatterns = [url(r'^__debug__/', include(debug_toolbar.urls))] + urlpatterns
urlpatterns = [re_path(r'^__debug__/', include(debug_toolbar.urls))] + urlpatterns