2016-04-14 2 views
0

В моей основе Django приложенияв получении ошибки Djando вида класса - глобальное имя «я» не определен

Я пытаюсь переопределить метод удаления Delete зрения. У меня есть 2 модели Category и Subcategory.

Категория является иностранным ключом подкатегории и защищена при удалении.

category = models.ForeignKey(Category, on_delete=models.PROTECT) 

Это мой класс в view.py Однако каждый раз, когда я исполняю я получаю - глобальное имя «я» не определен.

(код находится внутри класса, так само должно иметь в виду класс. Я думал, что я должен создать экземпляр, чтобы использовать его, но все образцы, которые я видел в Интернете на Django это сделать именно так.)

class CategoryDelete(DeleteView): 
    model = Category 
    success_url = reverse_lazy('category_list') 

    def delete(request, *args, **kwargs): 
     self.object = self.get_object() 
     if self.object.gameteams_set.exists(): 
      # Return the appropriate response 
      success_url = self.get_success_url() 
      self.object.delete() 
     return HttpResponseRedirect(success_url) 

ответ

4

Ваш аргумент функции отсутствует self:

def delete(self, request, *args, **kwargs): 

delete функция принадлежит к классу CategoryDelete, поэтому методы класса необходимо self для доступа к свойствам экземпляра.

 Смежные вопросы

  • Нет связанных вопросов^_^