UpdateView refere-se a uma visão (lógica) para atualizar uma instância particular de uma tabela do banco de dados com alguns detalhes extras. É usado para atualizar entradas no banco de dados, por exemplo, atualizando um artigo em geeksforgeeks. Já discutimos os fundamentos do Update View em Update View - Visualizações baseadas em funções do Django . As visualizações baseadas em classe fornecem uma maneira alternativa de implementar visualizações como objetos Python em vez de funções. Eles não substituem as visualizações baseadas em função, mas têm certas diferenças e vantagens quando comparadas às visualizações baseadas em função:

  • A organização do código relacionado a métodos HTTP específicos (GET, POST, etc.) pode ser tratada por métodos separados em vez de ramificação condicional.
  • Técnicas orientadas a objetos, como mixins (herança múltipla), podem ser usadas para fatorar o código em componentes reutilizáveis.

As visualizações baseadas em classe são mais simples e eficientes de gerenciar do que as visualizações baseadas em função. Uma visão baseada em função com toneladas de linhas de código pode ser convertida em uma visão baseada em classe com apenas algumas linhas. É aqui que a Programação Orientada a Objetos tem impacto.

Django UpdateView - visualizações baseadas em classe

Ilustração de como criar e usar UpdateView usando um exemplo. Considere um projeto denominado geeksforgeekscom um aplicativo denominado geeks.

Consulte os artigos a seguir para verificar como criar um projeto e um aplicativo no Django.

Depois de ter um projeto e um aplicativo, vamos criar um modelo do qual estaremos criando instâncias por meio de nossa visão. Em geeks/models.py,



from django.db import models 
   
class GeeksModel(models.Model): 
  
    
    title = models.CharField(max_length = 200) 
    description = models.TextField() 
  
    
    
    def __str__(self): 
        return self.title