Python S3是否可以在Django 1.2.5中使用staticfiles应用程序存储静态文件?
我有一个网站运行在Django 1.2.5上,其中不包括staticfiles应用程序。但是,我已经通过pip安装了staticfiles应用程序:Python S3是否可以在Django 1.2.5中使用staticfiles应用程序存储静态文件?,python,django,amazon-s3,django-staticfiles,Python,Django,Amazon S3,Django Staticfiles,我有一个网站运行在Django 1.2.5上,其中不包括staticfiles应用程序。但是,我已经通过pip安装了staticfiles应用程序: sudo pip install django-staticfiles 然后,我将staticfiles应用程序添加到settings.py: INSTALLED_APPS += ( 'staticfiles', 但是,当我重新启动服务器时,在/var/log/uwsgi/app/my-site.log中会出现502坏网关错误和以下错误
sudo pip install django-staticfiles
然后,我将staticfiles应用程序添加到settings.py:
INSTALLED_APPS += (
'staticfiles',
但是,当我重新启动服务器时,在/var/log/uwsgi/app/my-site.log中会出现502坏网关错误和以下错误:
Traceback (most recent call last):
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/core/handlers/wsgi.py", line 248, in __call__
response = self.get_response(request)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 141, in get_response
return self.handle_uncaught_exception(request, resolver, sys.exc_info())
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 165, in handle_uncaught_exception
return debug.technical_500_response(request, *exc_info)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/views/debug.py", line 59, in technical_500_response
html = reporter.get_traceback_html()
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/views/debug.py", line 141, in get_traceback_html
return t.render(c)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/template/__init__.py", line 173, in render
return self._render(context)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/template/__init__.py", line 167, in _render
return self.nodelist.render(context)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/template/__init__.py", line 796, in render
bits.append(self.render_node(node, context))
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/template/__init__.py", line 809, in render_node
return node.render(context)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/template/__init__.py", line 844, in render
output = self.filter_expression.resolve(context)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/template/__init__.py", line 579, in resolve
new_obj = func(obj, *arg_vals)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/template/defaultfilters.py", line 682, in date
return format(value, arg)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/dateformat.py", line 281, in format
return df.format(format_string)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/dateformat.py", line 30, in format
pieces.append(force_unicode(getattr(self, piece)()))
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/dateformat.py", line 187, in r
return self.format('D, j M Y H:i:s O')
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/dateformat.py", line 30, in format
pieces.append(force_unicode(getattr(self, piece)()))
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/encoding.py", line 66, in force_unicode
s = unicode(s)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/functional.py", line 206, in __unicode_cast
return self.__func(*self.__args, **self.__kw)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/translation/__init__.py", line 55, in ugettext
return real_ugettext(message)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/functional.py", line 55, in _curried
return _curried_func(*(args+moreargs), **dict(kwargs, **morekwargs))
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/translation/__init__.py", line 36, in delayed_loader
return getattr(trans, real_name)(*args, **kwargs)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/translation/trans_real.py", line 276, in ugettext
return do_translate(message, 'ugettext')
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/translation/trans_real.py", line 266, in do_translate
_default = translation(settings.LANGUAGE_CODE)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/translation/trans_real.py", line 176, in translation
default_translation = _fetch(settings.LANGUAGE_CODE)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/translation/trans_real.py", line 159, in _fetch
app = import_module(appname)
File "/var/projects/my-site/env/local/lib/python2.7/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
ImportError: No module named staticfiles
但是,当我从Virtualenv文件夹运行以下命令时,我可以导入静态文件:
$ python manage.py shell
Python 2.7.6 (default, Mar 22 2014, 22:59:56)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> import staticfiles
>>>
本质上,我正试图根据以下博文将静态文件移动到S3:
是否可以使用Django 1.2.5中的staticfiles应用程序,或者我必须升级Django
我宁愿不升级Django,因为我相信这会破坏网站的许多其他部分
还有什么其他选择?我认为可以用boto来代替?
django存储
与django 1.2.2不兼容,很遗憾。据 此库通常与当前支持的Django版本兼容。检查setup.py中的trove分类器以确保正确
不幸的是,
django存储
与django 1.2.2不兼容。据 此库通常与当前支持的Django版本兼容。检查setup.py中的trove分类器以确保正确
我的错误:当我运行importstaticfiles命令时,我没有激活我的virtualenv。我在linux2上做了源代码
/var/projects/my site/env/bin/activate
python manage.py shellpython manage.py shell python 2.7.6(默认值,2014年3月22日,22:59:56)[GCC 4.8.2]键入“帮助”、“版权”、“信用”或“许可证”以获取更多信息。(InteractiveConsole)>>>>导入staticfiles回溯(最近一次调用last):文件“”,第1行,在ImportError中:没有名为staticfiles的模块。因此,我假设这种在S3上存储文件的方法在Django上是不可能的,因为听起来您还没有在virtualenv中安装staticfiles
。执行source/var/projects/my site/env/bin/activate
,然后pip安装django静态文件(sudo应该不是必需的)。请升级django。1.2.5已经非常过时了,从那以后已经有很多安全修复。我的错误:我在运行import staticfiles命令时没有激活我的virtualenv。我在linux2上做了源代码/var/projects/my site/env/bin/activate
python manage.py shell
python manage.py shell python 2.7.6(默认值,2014年3月22日,22:59:56)[GCC 4.8.2]键入“帮助”、“版权”、“信用”或“许可证”以获取更多信息。(InteractiveConsole)>>>>导入staticfiles回溯(最近一次调用last):文件“”,第1行,在ImportError中:没有名为staticfiles的模块。因此,我假设这种在S3上存储文件的方法在Django上是不可能的,因为听起来您还没有在virtualenv中安装staticfiles
。执行source/var/projects/my site/env/bin/activate
,然后pip安装django静态文件(sudo应该不是必需的)。请升级django。1.2.5非常过时,自那时以来,已经有许多安全修复。