Форма не появляется, несмотря на то, что я добавил в представления

views.py

class LogReply(LoginRequiredMixin,UpdateView):
    model = LogItem
##    fields = ['handler','status','comment']
    form_class = LogItemForm
    template_name = 'log/logitem_detail.html'

    def get_success_url(self):
        return reverse('log_view',self.object.id)

forms.py

class LogItemForm(forms.ModelForm):
    class Meta:
        model = LogItem
        fields = ['handler','status','comment']
        widgets = {
            'comment':forms.Textarea(attrs={
                'class':'form-control',
                'placeholder':'請在此輸入處理情形...'},
            ),
        }

logitem_detail.html

{% extends 'base.html' %}

{% block content %}
<div class="card">
  <div class="card-header">
    <div class="h3">{{ object.subject }}</div>
  </div>
  <div class="card-body">
    <div class="card-text">
      {{ object.description|linebreaks }}
    </div>
  </div>
  <div class="card-footer card-text d-flex justify-content-between text-muted">
    <small title="Reporter"><i class="fas fa-user"></i> {{ object.reporter }} <i class="fas fa-phone"></i> {{ logitem.phone }}</small>
    <small><i class="far fa-clock"></i> {{ object.ctime }}</small>
  </div>
</div>
<hr>
<div class="card mt-3">
  {% if form %}
  <form action="" method="post" enctype="multipart/form-data">
  {% csrf_token %}
  <div class="card-header d-flex justify-content-between">
    <div class="h3">Situation</div>
    <div>{{ form.status }}</div>
  </div>
  <div class="card-body">{{ form.comment }}</div>
  <div class="card-footer card-text d-flex justify-content-between text-muted">
    <small title="handler"><i class="fas fa-user-md"></i> {{ form.handler }}</small>
    <input type="submit" value="Submit" class="btn btn-sm btn-primary">
    <small><i class="far fa-clock"></i> {{ object.utime }}</small>
  </div>
  </form>
  {% else %}
  <div class="card-header d-flex justify-content-between">
    <div class="h3">Situation</div>
    <div>
      <span class="badge badge-{{ logitem.get_status_class }}">
      {{ object.get_status_display }}
      </span>
    </div>
  </div>
  <div class="card-body">{{ object.comment|linebreaks }}</div>
  <div class="card-footer card-text d-flex justify-content-between text-muted">
    <small title="handler"><i class="fas fa-user-md"></i> {{ object.handler }}</small>
    <small><i class="far fa-clock"></i> {{ object.utime }}</small>
  </div>
  {% endif %}
</div>
{% endblock %}

У меня возникла проблема, связанная с тем, что я хочу добавить форму в шаблон logitem_detail.html в области формы. Хотя я уже установил конкретный шаблон и форму в представление на основе классов LogReply, форма по-прежнему не появляется в конкретной области. Поскольку я не слишком хорошо знаком с функциями представлений на основе классов в Django, может ли кто-нибудь помочь мне выяснить, в чем проблема?

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