Skip to main content

A ticket application for Django projects

Project description

django-ticket

Ticket application for django project

Repository

You can find the source code and contribute to the project at the following link:

GitHub Repository

Contributors

Installation

1. install package

pip install django-ticket

2. add this application in settings.INSTALLED_APPS :

INSTALLED_APPS = [
    # ...
    'ticket',
    # ...
]

3. create and migrate migrations in BASE_DIR:

python manage.py migrate ticket

4. in core application include application urls:

from django.urls import path , include

urlpatterns += path("ticket/", include("ticket.urls"))

when you pass this missions you will see this in your admin panel:

Screenshot from 2024-01-14 10-07-30

API Documentation:

You can create a Ticket from admin panel for a user to admin. Note that and you can do all this operations from admin to a user

/ticket/

Create a ticket from user to admin and add a new message:

method: POST

required keywords : ("title","section","priority","message")

/ticket/

Get all tickets of user as a list

method: GET

required keywords : just must to be authorized.

/ticket/id/

Add message to a ticket with its id :

method: POST

required keywords : ("message",)

Note: id means ticket's id

/ticket/id/

Get a specific ticket by detail with its messages by it's id and Change ticket to seen state from user

method: GET

required keywords : just must to be authorized.

Note: id means ticket's id

/ticket/id/

Close ticket.

method: PATCH

required keywords : just must to be authorized.

Note: id means ticket's id

A little more Professional

You can filter and have not seen tickets in admin panel:

settings.py:

1. Add 'ticket/templates' to DIRS of TEMPLATES:

TEMPLATES = [
    {
        # ...
        'DIRS': [
            # ...
            'ticket/templates'
            # ...
                    ],
        # ...
    }
]

2.Add 'ticket.context_processors.get_pending_tickets' to context_processors OPTIONS:

TEMPLATES = [
    # ...
            "OPTIONS": {
            # ...
            "context_processors": [
                # ...
            'ticket.context_processors.get_pending_tickets'
                # ...
            ]
            # ...
    }
]

Finally your application is complete to use:

Screenshot from 2024-01-14 10-19-39

Let's enjoy!

Changelog

[Version 3.1.1] - 2024-10-29

Added

  • soft_delete attribute ticket and messages.
  • viewed attribute view time of a message.
  • viewer attribute viewer user of a message.
  • swagger api docs and schemas.

Changed

  • Make urls RESTFUL. just one address -> /ticket/

Deprecated

  • See ticket with an endpoint. seen_by_user by get ticket in detail

Fixed

  • seen_by_admin switches to True when open ticket object in admin panel

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_ticket-3.1.3.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_ticket-3.1.3-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file django_ticket-3.1.3.tar.gz.

File metadata

  • Download URL: django_ticket-3.1.3.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for django_ticket-3.1.3.tar.gz
Algorithm Hash digest
SHA256 1fcb53f1036774c37c7b4917ff2d3da2b00c373259bc83b800adb64ebb996455
MD5 a50d4ce2fa251c5e09f4a845da162183
BLAKE2b-256 63bfd5c1ef6445544bec27487845ede0422116a3dbe69ca6e6ebe240f41de6cb

See more details on using hashes here.

File details

Details for the file django_ticket-3.1.3-py3-none-any.whl.

File metadata

  • Download URL: django_ticket-3.1.3-py3-none-any.whl
  • Upload date:
  • Size: 9.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for django_ticket-3.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 90c6d48cd054531fa1f8411cac0bc77a57fc92f3e9db849eb4912096d39d57b6
MD5 7d0b494e3bbecf0ba5f6e2c7c538ea36
BLAKE2b-256 e48c2afc2d78a4580cd8b8a934344334185518e5bbed5b4d926973be99b57732

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page