【发布时间】:2016-04-19 13:43:17
【问题描述】:
我已经将一个 Django 项目部署到 Heroku,但我遇到了一个问题:有一个包,它位于 virtualenv 文件夹中,这给了我一个错误。
这是回溯
Environment:
Request Method: POST
Request URL: https://pin-a-voyage.herokuapp.com/login/
Django Version: 1.8
Python Version: 2.7.6
Installed Applications:
('django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog',
'custom_user',
'django_markdown',
'parsley')
Installed Middleware:
('django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'django.middleware.security.SecurityMiddleware',
'whitenoise.middleware.WhiteNoiseMiddleware')
Traceback:
File "/app/.heroku/python/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
132. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/app/blog/views.py" in login
147. auth_login(request, user)
File "/app/.heroku/python/lib/python2.7/site-packages/django/contrib/auth/__init__.py" in login
117. user_logged_in.send(sender=user.__class__, request=request, user=user)
File "/app/.heroku/python/lib/python2.7/site-packages/django/dispatch/dispatcher.py" in send
201. response = receiver(signal=self, sender=sender, **named)
File "/app/.heroku/python/lib/python2.7/site-packages/django/contrib/auth/models.py" in update_last_login
26. user.save(update_fields=['last_login'])
File "/app/custom_user/models.py" in save
62. new_image = resizeimage.resize_width(pil_image_obj, 300)
File "/app/.heroku/python/lib/python2.7/site-packages/resizeimage/resizeimage.py" in wrapper
31. validator(image, size)
File "/app/.heroku/python/lib/python2.7/site-packages/resizeimage/resizeimage.py" in _width_is_big_enough
47. raise ImageSizeError(image.size[0], width)
Exception Type: ImageSizeError at /login/
Exception Value: 'Image is too small, Image size : 300, Required size : 300'
简而言之:我上传了个人资料图片,但我遇到了这个错误,因为我修改了 virtualenv 文件夹上的包,但 virtualenv 文件夹没有推送到 Heroku。
由于部署到 Heroku 时必须将 virtualenv 文件夹放入 .gitignore(不是吗?),我该如何避免这个问题?
【问题讨论】:
-
你不应该编辑任何包文件,这些文件不会被推送到你的heroku repo
-
好的,但是如果我需要编辑一个以更改某些功能怎么办?还有其他方法吗?
标签: django heroku deployment virtualenv