如何解决Heroku 在通过管理面板上传 pdf 和 jpg 时出现问题 |姜戈,蟒蛇
我有一个用 python/django 制作的简单项目,我通过管理面板上传 pdf 和 jpg。这些文件可以访问一两天,之后我认为 Heroku 删除它们。我在设置白噪声时使用,但我不明白为什么服务器会删除它们。
设置
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware','whitenoise.middleware.WhiteNoiseMiddleware','django.contrib.sessions.middleware.SessionMiddleware','django.middleware.common.CommonMiddleware','django.middleware.csrf.CsrfViewMiddleware','django.contrib.auth.middleware.AuthenticationMiddleware','django.contrib.messages.middleware.MessageMiddleware','django.middleware.clickjacking.XFrameOptionsMiddleware',]
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR,'staticfiles')
MEDIA_ROOT = os.path.join(BASE_DIR,'media')
MEDIA_URL = '/media/'
pdf 模板
<p>{{ IntroductionCv.paragraph }}</p>
<a href="{{ IntroductionCv.pdf.url }}" class="btn btn-fill" target="_blank" download>Download my cv</a>
jpg 模板
<div class="row">
{% for project in Projects %}
<div class="col-md-4 col-xs-6">
<div class="portfolio-item">
<img src="{{ project.image_project.url }}" class="img-res" alt="">
<div class="portfolio-item-info">
<h4>{{ project.title }}</h4>
<a href="{{ project.github_link }}"><i class="fab fa-github-square" style="font-size: 5em;"></i></a>
<a href="{{ project.site_link }}"><span class="glyphicon glyphicon-link" style="font-size: 4em;"></span></a>
</div><!-- /.portfolio-item-info -->
</div><!-- /.portfolio-item -->
</div>
{% endfor %}
</div>
观看次数
def index(request):
context = {'BackEndSkills': BackEndSkills.objects.all(),'SoftSkills': SoftSkills.objects.all(),'Services': Services.objects.all(),'Projects': Projects.objects.all(),'Counter':
Counter.objects.all(),'IntroductionCv': IntroductionCv.objects.latest('id'),'title': 'Alexandru Aprodu'}
return render(request,'the_professional/index.html',context)
pdf 模型
class IntroductionCv(models.Model):
paragraph = models.TextField()
pdf = models.FileField(upload_to='media',verbose_name='PDF')
def __str__(self):
template = '{0.paragraph} {0.pdf}'
return template.format(self)
class Meta:
verbose_name_plural = "Introduction Cv"
jpg 模型
class Projects(models.Model):
title = models.CharField(max_length=100)
site_link = models.TextField()
github_link = models.TextField(default=None)
image_project = models.ImageField(upload_to='media',verbose_name='Image')
class Meta:
verbose_name_plural = "Projects"
def save(self,*args,**kwargs):
super(Projects,self).save(*args,**kwargs)
img = i.open(self.image_project.path)
if img.height > 500 or img.width > 500:
output_size = (500,500)
img.thumbnail(output_size)
img.save(self.image_project.path)
def __str__(self):
return self.title
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。