Некоторые части моей формы отображаются правильно, но некоторые нет Django

Я создаю приложение для работы с билетами в своем проекте django. Когда я создаю билет и отправляю его, часть формы отображается правильно во фронтенде, за исключением трех полей. Это ticket.name, category.name и ticket.description, во фронтенде эти поля отображаются как "None", но все остальное отображается так, как и должно быть во фронтенде. Я также проверил страницу администратора и вижу, что ни Ticket, ни Category не создаются должным образом. Я не совсем уверен, как действовать дальше.

Вот что у меня есть на данный момент

models.py

class Category(models.Model):
    name = models.CharField(max_length=200, null=True)
    
    def __str__(self):
        return self.name or ''
    
class Ticket(models.Model):
    STATUS = (
        (True, 'Open'),
        (False, 'Closed')
    )
    
    PRIORITIES = (
        ('None', 'None'),
        ('Low', 'Low'),
        ('Medium', 'Medium'),
        ('High', 'High')
    )
    
    TYPE = (
        ('Misc', 'Misc'),
        ('Bug', 'Bug'),
        ('Help Needed', 'Help Needed'),
        ('Concern', 'Concern'),
        ('Question', 'Question')
    )
    
    host = models.ForeignKey(CustomUser, on_delete=models.SET_NULL, null=True, related_name='host')
    category = models.ForeignKey(Category, on_delete=models.SET_NULL, null=True, related_name='category')
    name = models.CharField(max_length=200, null=True)
    status = models.BooleanField(choices=STATUS, default=True)
    priority = models.TextField(choices=PRIORITIES, default='None', max_length=10)
    type = models.TextField(choices=TYPE, default='Misc', max_length=15)
    description = RichTextField(null=True, blank=True)
    # description = models.TextField(null=True, blank=True)
    participants = models.ManyToManyField(CustomUser, related_name='participants', blank=True)
    updated = models.DateTimeField(auto_now=True)
    created = models.DateTimeField(auto_now_add=True)
    
    class Meta:
        ordering = ['-updated', '-created']
        
    def __str__(self):
        return self.name or ''

views.py

просмотр для создания билета

def createTicket(request):
    form = TicketForm()
    
    categories = Category.objects.all()
    if request.method == 'POST':
        category_name = request.POST.get('category')
        category, created = Category.objects.get_or_create(name=category_name)
        
        ticket = Ticket.objects.create(
            host = request.user,
            category=category,
            name=request.POST.get('name'),
            status=request.POST.get('status'),
            priority=request.POST.get('priority'),
            type=request.POST.get('type'),
            description=request.POST.get('description'),
        )
        
        return redirect('ticket', pk=ticket.id)
    
    context = {'form': form, 'categories': categories}
    return render(request, 'projects/ticket_form.html', context)

просмотр страницы для билетов

def ticket(request, pk):
    ticket = Ticket.objects.get(id=pk)
    ticket_messages = ticket.message_set.all()
    participants = ticket.participants.all()
    
    if request.method == 'POST':
        message = Message.objects.create(
            user=request.user,
            ticket=ticket,
            body=request.POST.get('body')
        )
        ticket.participants.add(request.user)
        return redirect('ticket', pk=ticket.id)
    
    context = {'ticket': ticket, 'ticket_messages': ticket_messages, 
               'participants': participants}
    return render(request, 'projects/ticket.html', context)

вот часть шаблона для страницы билетов

<div class="column-layout">
                    <div class="main-column">
                        <h1>{{ticket.name}}</h1>
                        {{ticket.description|safe }}
                    </div>
                    
                    
                    <div class="sidebar-two">
                        <span style="white-space: pre-line"><label for="room_topic">Enter a Category</label>
                            <input required type="text" value="{{ticket.category.name}}" name="topic" list="topic-list" />
                            <datalist id="topic-list">
                            <select id="room_topic">
                              {% for category in categories %}
                              <option value="{{category.name}}">{{category.name}}</option>
                              {% endfor %}
                            </select>
                            </datalist>
                            </span>
                          <div class="form__group">
                            <span style="white-space: pre-line"><label for="room_name">Assigned to</label>
                              {{ticket.assigned}}</span>
                          </div>
                          <div class="form__group">
                            <span style="white-space: pre-line"><label for="room_name">Ticket Status</label>
                              {{ticket.status|yesno:'Open,Closed'}}</span>
                          </div>
                          <div class="form__group">
                            <span style="white-space: pre-line"><label for="room_name">Ticket Priorities</label>
                              {{ticket.priority}}</span>
                          </div>
                          <div class="form__group">
                            <span style="white-space: pre-line"><label for="room_name">Ticket Type</label>
                              {{ticket.type}}</span>
                          </div>
                    </div>
                </div>

Вот как это выглядит на странице администратора. База данных Ticket выглядит так же

enter image description here

Вернуться на верх