Python Django保存元数据-[Errno 2]没有这样的文件或目录:
我有个问题。我对路径有问题: [Errno 2]没有这样的文件或目录: 我试过:Python Django保存元数据-[Errno 2]没有这样的文件或目录:,python,django,Python,Django,我有个问题。我对路径有问题: [Errno 2]没有这样的文件或目录: 我试过: url = self.image.url image_meta = image.open(url) 然后在添加URL的第一部分时“https://....“+self.image.url 我还有同样的问题你知道吗 class Picture(models.Model): catego = models.ForeignKey(Catego,on_delete=models.CASCADE,related_n
url = self.image.url
image_meta = image.open(url)
然后在添加URL的第一部分时“https://....“+self.image.url
我还有同样的问题你知道吗
class Picture(models.Model):
catego = models.ForeignKey(Catego,on_delete=models.CASCADE,related_name="catego_pictures")
user = models.ForeignKey(User, blank=True, null=True,on_delete=models.CASCADE,related_name='user_pictures')
image = models.ImageField(upload_to='nutriscore/')
latitude = models.DecimalField(max_digits=9, decimal_places=6, blank=True, default='0')
longitude = models.DecimalField(max_digits=9, decimal_places=6, blank=True, default='0')
date = models.CharField(max_length=100, blank=True)
software = models.CharField(max_length=100, blank=True)
artist = models.CharField(max_length=100, blank=True)
metadata = models.TextField(max_length=1000, blank=True)
pictureoption = models.CharField(max_length=20,choices=Pictureoption.choices,default=Pictureoption.HOME,)
publishing_date = models.DateField(auto_now_add=True)
def save(self, *args, **kwargs):
super().save(*args, **kwargs)
url = self.image.url
full_path = os.listdir(url)
image_meta = image.open(full_path)
exif = {}
for tag, value in image_meta.get_exif().items():
if tag in TAGS:
exif[TAGS[tag]] = value
if 'DateTime' in exif:
self.date = DateTime
if 'Software' in exif:
self.software = Software
if 'Artist' in exif:
self.artist = Artist
...
self.metadata = exif
super().save(*args, **kwargs)
def __str__(self):
return self.catego.name
您应该使用图像对象的
.path
属性,而不是.url
,因为您似乎试图使用文件的本地路径访问该文件,而不是将其作为web资源获取。我对.path也有同样的问题。我的Django不是本地的,而是在线的。看看你的代码。你的行为url=self.image.url;full_path=os.listdir(url)
,意思是“给我这个图像的url,然后尝试列出url的内容。这完全没有意义。使用.path
获取图像的路径,然后使用os.path.basename
获取该路径的目录。