【问题标题】:django_pylibmc complains under Django 1.7 and python 3.4django_pylibmc 在 Django 1.7 和 python 3.4 下抱怨
【发布时间】:2015-03-23 01:51:41
【问题描述】:

我的环境: 姜戈 1.7 Python 3.2

作为免责声明,我是 Django 和 Python 的新手。

我正在浏览这个doc,以便在 Django 中使用 Memcachier。

安装过程没有给我任何错误,但是当我使用 ./manage.py tests 启动测试时,我收到以下错误:

   return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 2254, in _gcd_import
  File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
  File "<frozen importlib._bootstrap>", line 2226, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1200, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1129, in _exec
  File "<frozen importlib._bootstrap>", line 1467, in exec_module
  File "<frozen importlib._bootstrap>", line 1572, in get_code
  File "<frozen importlib._bootstrap>", line 1532, in source_to_code
  File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed
  File ".../lib/python3.4/site-packages/django_pylibmc/memcached.py", line 92
    except MemcachedError, e:

SyntaxError: invalid syntax

我正在查看 python 3.x docs for errors似乎该文件的第 92 行确实不是有效的语法,但我不确定。

谁能提出一个可能的解决办法?

【问题讨论】:

  • 您使用 django-pylibmc 的任何原因? Django 自带 pylibmc 后端:django.core.cache.backends.memcached.PyLibMCCache
  • 你也安装了libmemcached-dev
  • @AmirR。是的,我安装了 libmemcached-dev。我正在使用以下doc,它建议安装django-pylibmc

标签: python django memcached


【解决方案1】:

该库似乎与 Python 3 不兼容。

但是,正如 Amir 建议的那样,无论如何都没有必要使用它; Django 带有一个 pylibmc 后端,如the documentation 中所述。

【讨论】:

  • pylibmc 后端能否与 Memcachier Heroku 插件一起使用?
  • @rexposadas Memcachier 只是托管 memcached 实例,因此除非它们有一些特殊的 API,否则任何像样的 memcached 客户端(包括 pylibmc)都应该可以工作。
【解决方案2】:

我知道您正在关注建议使用 django-pylibmc 的 Heroku 文档,但 Django 使用 django.core.cache.backends.memcached.PyLibMCCache 支持开箱即用的 Pylibmc。由于这些只是 pylibmc C 库上的 python 包装器,因此真的没有理由使用 django-pylibmc。

此外,如果您查看 django-pylibmc 的 README (https://github.com/jbalogh/django-pylibmc#requirements),它会声明它是使用 Python 2.7 编写和测试的,因此这里使用 Python 3 也是有问题的。

我赞赏您在 Django 中使用 Python 3 所做的努力,但请确保您的所有第三方应用程序都兼容,我强烈建议您阅读 Django 文档:https://docs.djangoproject.com/en/1.7/topics/python3/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-02
    • 2015-11-30
    • 1970-01-01
    • 2013-10-25
    • 2012-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多