我有一个名为Notification的抽象类。我有两个具体的实现,即NearNotification和FarNotification。
每个人都有与之相关的不同实体。一个是部门,一个是集团。
我想发送一封电子邮件给与NearNotification部门或FarNotifications集团相关联的电子邮件。
现在我的抽象通知类看起来像:
class Notification(models.Model):
name = models.CharField(max_length=256)
class Meta:
abstract = True
def send(self):
group_email = self.group.email
department_email = self.department.email
根据创建的类,部门或组将填充部门或组字段。
如何有条件地对此子类进行排序以确定要使用哪个电子邮件?
像
这样的东西def send(self):
if concrete class = FarNotification:
group_email = self.group.email
elif if concrete class = NearNotification:
department_email = self.department.email
答案 0 :(得分:0)
您可以使用self
访问该班级的名称:
def send(self):
if self.__class__.__name__ = "FarNotification":
group_email = self.group.email
elif if self.__class__.__name__ = "NearNotification":
department_email = self.department.email