如何在Django中以详细视图显示上载的Dicom图像元数据?

2024-06-26 14:32:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我是一个新的编码和工作在一个小Django项目中,我想显示Dicom图像元数据。我在Django模型中包含了FileField以上载Dicom图像,我希望在通用详细视图中显示上载的Dicom图像元数据。我尝试重写上下文方法并访问图像路径,但出现错误。我该怎么做呢?请帮忙

#我的模特

class Patient(models.Model):
    name = models.CharField(max_length=100)
    ailment = models.TextField(max_length=200)
    date_tested = models.DateTimeField(default=timezone.now)
    image = models.ImageField(upload_to='.',default='download.jpg')
    dicom = models.FileField(upload_to='dicom/',null=True)

#我的详细视图

class PatientDetailView(LoginRequiredMixin,DetailView):
    model = Patient

    def get_context_data(self,**kwargs):
        medinfo = dict()
        context = super().get_context_data(**kwargs)
        dcpimg = imageio.imread(self.dicom.path)
        for keys in dcpimg.meta:
            medinfo[keys] = str(dcpimg.meta[keys])
        context['medinfo'] = medinfo
        return context

##我收到这个错误

AttributeError: 'PatientDetailView' object has no attribute 'dicom'

Tags: 数据django图像视图models错误contextkeys