Django 3: Невозможно сгенерировать динамическое представление объекта

Я успешно создал ожидаемую структуру для моей модели, и в переменных ошибок я вижу, что объект DB был возвращен, но я не могу разрешить страницу. Я получаю ошибку "TypeError at /ticket-edit/2 - init() got an unexpected keyword argument 'instance'" - я неправильно ссылаюсь на объект? Я хочу использовать существующую форму TicketForm, но заполнить результат значениями полей из URL.

В ошибке локальная переменная показывает, что был получен ожидаемый билет:

Variable: Value 
  • aTicketID: '2'
  • context: {}
  • obj: <Ticket: 2 2021-10-06 Название билета Описание билета> запрос
  • <WSGIRequest: GET '/ticket-edit/2'>
  • .
  • Exception Location: /views.py, строка 118, in ticket_edit
  • .
  • строка 118: updateform=TicketForm(instance=obj)

Urls.py (я использую URL вместо пути для генерации ID-ссылки)

urlpatterns = [
    url(r'^ticket-edit/(?P<aTicketID>\d+)', views.ticket_edit, name='ticket-edit')
]

Models.py

class Ticket(models.Model):
    #---Base Meta-----------------------------------------
    appTicketID = models.AutoField(primary_key=True)
    date_submitted = models.DateTimeField(
        max_length=20,
        auto_now_add=True)
    issue_title = models.CharField(max_length=90)
    issue_description = models.CharField(max_length=1000)
    
    def __str__(self):
        return (f"{self.appTicketID} "
                f"{self.date_submitted} "
                f"{self.issue_title} "
                f"{self.issue_description} "

    def get_absolute_url(self):
        return reverse_lazy('ticket-edit', kwargs={'aTicketID': self.appTicketID}

Views.py

@login_required
def ticket_edit(request, aTicketID):
    context = {}
    obj=Ticket.objects.get(appTicketID=aTicketID)
    updateform=TicketForm(instance=obj)
    
    if aTicketID == None:
        aTicketID = 1
    aticket = Ticket.objects.filter(appTicketID=aTicketID)
    print('\n-----------------------------------------------------------------')
    print('TicketFiltered: ', aticket)
    print('-----------------------------------------------------------------\n')
    
    context = {
        "has_error": False,
        "updateform": updateform,
        "aticket": aticket
    }
    return render(request,'appname/ticket-edit.html', context)
Вернуться на верх