Building a Django Based Request Ticket System

Nov 24 09:04 2015 Rossy Guide Print This Article

An issue tracking system (also ITS, trouble ticket system, support ticket, request management or incident ticket system) is a computer software package that manages and maintains lists of issues, as needed by an organization.

OTRS,Guest Posting an initialism for Open-source Ticket Request System, is a free and open-source trouble ticket system software package that a company, organization, or other entity can use to assign tickets to incoming queries and track further communications about them.

Uses for a Ticketing System:

  • Production Operations Support
  • Sales Lead Tracking
  • Customer Service
  • Project Management
  • Network Security
  • Engineering (Bug Tracking)

Features of a Ticketing System:

  • Accessibility
  • Ease of use
  • Multiuser
  • Ability to track history
  • Immutable history
  • Flexible views
  • Access control
  • Dependency management
  • Notifications
  • Customizable workflow

Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. Built by experienced developers, it takes care of much of the hassle of Web development, so you can focus on writing your app without needing to reinvent the wheel. It's free and open source.

Let we discuss about “Building a django based request ticket System”. It’s of some question and answer is as follows.

Question from Ajhavery:

I want to build a django based request ticket system where a front end user will put a request to the system. The request will then flow to a number of support staffs in the backend with an option to accept/deny help to the front end user. Selecting yes should produce a reply window to the support executive in which he/she can type his/her comments. More than one support executive can reply to the user. The front end user may see the replies in his account. Any help with this project will be highly appreciated.

Answer from Hybrid:

Although I stated that the question is vague above, here is a workflow that may be able to get you started if you have not done so already.

The solution seems pretty straightforward:

1) Create an appropriate url in your that will represent the page users will do this action.

2) Create a Ticket model in you Django models. Perhaps something like this:

class Ticket(models.Model):

                             user = models.ForeignKey(User)

                             question = models.CharField(max_length=500, blank=False)

                             admin_response = models.CharField(max_length=500, blank=True)

                             accepted = models.BooleanField(default=False)

3) Create a view in your, passing in a form through the context, as well as all of the possible answers (e.x. queryset = Ticket.objects.filter(user=request.user, accepted=True)).

4) Render a POST form on the user's frontend in the .html file.

5) Render the answers in your .html file (e.x. {% for ticket in queryset %}{{ ticket.admin_response }}{% endfor %}).

Once the user submits a ticket, any of your admins can enter their response through the Django Admin, which will then be shown to the asking user via step 5.

Keep in mind that this gets more complicated if the user wants a comment thread(i.e. more than just one question and one response).

Source: Free Guest Posting Articles from

About Article Author

Rossy Guide
Rossy Guide

If you like this article and want to find more information about Windows SFTP server I recommend you to check our Windows SFTP website.

View More Articles