好吧,我有两个Django模型:
class Ticket(BaseModel):
name = models.CharField(max_length=200)
description = models.TextField(blank=True, null=True)
def get_absolute_url(self):
return '/core/group/ticket/{0}/'.format(self.id)
class ProjectTicket(Ticket):
project = models.ForeignKey('Project', on_delete=models.DO_NOTHING)
phase = models.ForeignKey('ProjectPhase', blank=True, null=True, on_delete=models.DO_NOTHING)
def get_absolute_url(self):
return '/different/url/structure'
现在,我用Ticket.objects.all全部(). 这将返回所有Ticket对象,包括一些ProjectTicket子类。你知道吗
我想做的是访问get\u absolute\u url()子类,当所讨论的对象是实际的子类projectcket对象时。你知道吗
我知道我可以从子类中得到父类,但是我希望能够做相反的事情。你知道吗
有人取得过这样的成就吗?如果是,你采取了什么方法?你知道吗
我现在可以想到一个办法:
我相信你知道继承django模型会创建一个与父对象的OneToOne关系。因此,
Ticket
对象也是ProjectTicket
类的实例,它们将有一个名为projectticket
的属性。您可以检查此值并相应地返回url:相关问题 更多 >
编程相关推荐