Django将图像保存在两个文件夹中

时间:2020-05-13 08:08:22

标签: django django-models django-views

作为培训的一部分,我正在创建一个小型应用程序。该应用程序包括处理图像。我不明白为什么图片会保存在应用程序的“缓存”文件夹中。

class Post(models.Model):
    slug = models.SlugField(unique=True, blank=True)
    author = models.ForeignKey(User, on_delete=models.CASCADE, related_name='posts')
    image = models.ImageField(upload_to='posts/')
    description = models.TextField(blank=True, null=True)
    users_like = models.ManyToManyField(User, related_name='images_liked', blank=True)
    created = models.DateTimeField(auto_now_add=True)

    def save(self, *args, **kwargs):
        if not self.slug:
            slug = '{}_{}'.format(self.author, timezone.now())
            self.slug = slugify(slug)
        return super(Post, self).save(*args, **kwargs)

    class Meta:
        ordering = ('-created',)

settings.py

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')

views.py

class PostAddView(LoginRequiredMixin, FormView):
    form_class = PostAddForm
    template_name = 'accounts/postForm.html'

    def form_valid(self, form):
        post = form.save(commit=False)
        post.author = self.request.user
        post.image = self.request.FILES['image']
        post.save()
        return HttpResponseRedirect(self.get_success_url())

    def get_success_url(self):
        return reverse('account:profile')

screenshot

0 个答案:

没有答案
相关问题