Olá Marcos, como você está?
Peço desculpas pela demora em obter um retorno.
É possível ter dois modelos diferentes no Django, como você descreveu. Você pode criar dois modelos separados, um para as tarefas e outro para os relatórios de tarefas, como você mencionou. A chave para vinculá-los é usar uma chave estrangeira (ForeignKey) no modelo de relatório de tarefas, que faz referência ao modelo de tarefas.
Exemplo:
class Tarefa(models.Model):
nome = models.CharField(max_length=100)
feito = models.BooleanField()
def __str__(self):
return self.nome
class TarefaRelatorio(models.Model):
tarefa = models.ForeignKey(Tarefa, on_delete=models.CASCADE, editable=False)
descricao = models.TextField()
feito = models.BooleanField(default=False)
def save(self, *args, **kwargs):
self.feito = self.tarefa.feito
super(TarefaRelatorio, self).save(*args, **kwargs)
Nesse exemplo, o modelo TarefaRelatorios tem um campo de chave estrangeira que referencia o modelo Tarefas. O atributo feito e nome em TarefaRelatorios é uma cópia do atributo feito em Tarefas.
Com esses modelos definidos, você pode criar um formulário que permita ao usuário modificar tanto as tarefas quanto seus respectivos relatórios usando os campos dos modelos Tarefas e TarefaRelatorios.
Espero ter ajudado.
Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!