Объект 'QaDetail' не имеет атрибута 'объект' - PullRequest
0 голосов
/ 13 ноября 2018

У меня есть подробный вид в моем приложении, где пользователь может оставить свой ответ на вопрос. Но я получаю ошибку: 'QaDetail' object has no attribute 'object'

В трассировке ошибка здесь: context = super(QaDetail, self).get_context_data(**kwargs)

вот мой взгляд на Джанго (cbv):

class QaDetail(generic.DetailView, generic.FormView):
    template_name = 'qa/qa_detail.html'
    context_object_name = 'question'
    model = Question
    form_class = AnswerForm

    def get_success_url(self):
        return reverse('qa:qa_detail', kwargs={'pk': self.get_object().id})

    def get_context_data(self, **kwargs):
        context = super(QaDetail, self).get_context_data(**kwargs)
        context['answers'] = self.get_object().answers.all()
        return context

Ниже приведен мой модульный тест:

class AnswerCreateTests(LoggedInTestCase):
    def setUp(self):
        super(AnswerCreateTests, self).setUp()

    def test_status_code(self):
        self.assertEqual(self.response.status_code, 200)

    def test_create_answer(self):
        obj = AnswerFactory(text='this is answer')
        response = self.client.post(reverse('qa:qa_detail', kwargs={'pk': obj.id}))
        self.assertEqual(response.status_code, 200)
        self.assertContains(response, 'this is answer')

ошибка здесь: AttributeError: 'QaDetail' object has no attribute 'object'

...