我在我的模型中使用了‘选项集’,但我不能在模板中显示它们的标签
型号:
class Malpractice_Detail(models.Model):
DayTime_Choice={
('morning','صبح'),
('noon','ظهر'),
('night','شب'),
}
Damage_Choice={
('1','عدم آسیب'),
('2','آسیب به بیمار'),
('3','آسیب به پرسنل'),
('4','آسیب به تجهیزات پزشکی'),
}
malperactice_choice={
('1','خطاهای دارویی'),
('2','خطاهای احیاء قلبی-ریوی'),
('3','خطادرتزریقات وخونگیری'),
('4','خطادر ثبت اطلاعات وثبت پرونده'),
('5','خطاهای مراقبتی وبالینی'),
('6','اشتباهات پاراکلینیکی'),
('7','اشتباهات جراحی'),
('8','خطاهای تشخیصی پزشک'),
('9','اشتباهات تجهیزاتی'),
('10','اشتباهات مدیریتی')
}
hospital=models.ForeignKey('Accounting.hospital', verbose_name='بیمارستان',null=True, on_delete=models.DO_NOTHING)
name=models.CharField(max_length=50,verbose_name="نام شخصی که خطا از او سرزده",null=True, blank=True)
unit=models.ForeignKey('Accounting.unit', verbose_name='بخش',null=False, on_delete=models.DO_NOTHING)
time=models.CharField(max_length=10,choices=DayTime_Choice,null=False,blank=False,verbose_name='زمان وقوع')
type=models.CharField(max_length=50,choices=malperactice_choice,null=True,blank=True,verbose_name="نوع خطا")
date=models.DateField("تاریخ رخداد خطا", auto_now=False, auto_now_add=False)
role=models.ForeignKey('role', verbose_name='سمت خطاکار',null=False,blank=False, on_delete=models.DO_NOTHING)
damage=models.CharField(max_length=1,verbose_name='آسیب وارد شده',choices=Damage_Choice,default=1,null=False,blank=False)
st_happened=models.TextField(max_length=1000,verbose_name='شرح خطای رخ داده',null=False,blank=False)
decisions=models.TextField(max_length=1000,verbose_name='تصمیمات اتخاذ شده',null=True,blank=True)
cause_of_accident=models.TextField(max_length=1000,verbose_name='دلیل رخداد خطا',null=True,blank=True)
solution=models.TextField(max_length=1000,verbose_name='پیشنهاد و راهکار',null=True,blank=True)
user=models.ForeignKey(User, on_delete=models.DO_NOTHING)
reporting_datetime=models.DateTimeField(auto_now_add=True)
is_seen=models.BooleanField(verbose_name='دیده شده',default=False,null=True,blank=True)
has_followup=models.BooleanField(verbose_name='شرح پیگیری دارد',default=False,null=True,blank=True)
has_feedback=models.BooleanField(verbose_name='شرح بازخورد دارد',default=False,null=True,blank=True)
def __str__ (self):
return str(self.st_happened)
class Meta:
ordering=['-reporting_datetime']
在视图中:
def Index(request):
form=Malpractice_Detail.objects.select_related('Hospital','Unit','Role').filter(user=request.user).values('unit__name','date','role__Name','damage','st_happened','is_seen','has_followup','has_feedback')
return render(request,"malpractice/index.html",{'form':form})
在模板中:显示损坏代码,但不显示损坏标签
{% for item in form %}
<td>{{item.date|to_jalali:'%Y/%m/%d'}}</td>
<td>{{item.damage}}</td>## This show number of choice
<td>{{item.get_damage_display}}</td> ##Not show label
<td>{{item.st_happened}}</td>
I reed many post about this and try solutions but don't work for me
please help me for solve this problem