如何安装django-utils?

1 投票
2 回答
4958 浏览
提问于 2025-04-17 12:26

我尝试从GitHub上下载django-utils的源代码并用pip安装。安装过程很顺利,但在我的django应用中,queue_command却无法正常工作。

根据文档的建议,我尝试运行`python setup.py test`,结果出现了以下错误。我不知道该怎么解决这个问题。我是在mac snow leopard的虚拟环境中运行的。

有什么建议吗?谢谢。

running test
running egg_info
writing djutils.egg-info/PKG-INFO
writing top-level names to djutils.egg-info/top_level.txt
writing dependency_links to djutils.egg-info/dependency_links.txt
reading manifest file 'djutils.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching 'LICENSE.txt'
writing manifest file 'djutils.egg-info/SOURCES.txt'
running build_ext
Traceback (most recent call last):
  File "setup.py", line 33, in <module>
    tests_require=['pygments', 'PIL>=0.1.5', 'httplib2'],
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup
    dist.run_commands()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "build/bdist.linux-i686/egg/setuptools/command/test.py", line 121, in run
  File "build/bdist.linux-i686/egg/setuptools/command/test.py", line 101, in with_project_on_sys_path
  File "build/bdist.linux-i686/egg/setuptools/command/test.py", line 130, in run_tests
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/main.py", line 94, in __init__
    self.parseArgs(argv)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/main.py", line 149, in parseArgs
    self.createTests()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/main.py", line 158, in createTests
    self.module)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/loader.py", line 128, in loadTestsFromNames
    suites = [self.loadTestsFromName(name, module) for name in names]
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/loader.py", line 91, in loadTestsFromName
    module = __import__('.'.join(parts_copy))
  File "/Users/miki725/Development/libs/django-utils/runtests.py", line 43, in <module>
    from django.test.simple import run_tests
  File "/Users/miki725/Development/Django/lib/python2.7/site-packages/django/test/__init__.py", line 5, in <module>
    from django.test.client import Client, RequestFactory
  File "/Users/miki725/Development/Django/lib/python2.7/site-packages/django/test/client.py", line 27, in <module>
    from django.db import close_connection
  File "/Users/miki725/Development/Django/lib/python2.7/site-packages/django/db/__init__.py", line 40, in <module>
    backend = load_backend(connection.settings_dict['ENGINE'])
  File "/Users/miki725/Development/Django/lib/python2.7/site-packages/django/db/__init__.py", line 34, in __getattr__
    return getattr(connections[DEFAULT_DB_ALIAS], item)
  File "/Users/miki725/Development/Django/lib/python2.7/site-packages/django/db/utils.py", line 92, in __getitem__
    backend = load_backend(db['ENGINE'])
  File "/Users/miki725/Development/Django/lib/python2.7/site-packages/django/db/utils.py", line 51, in load_backend
    raise ImproperlyConfigured(error_msg)
django.core.exceptions.ImproperlyConfigured: 'sqlite3' isn't an available database backend.
Try using django.db.backends.sqlite3 instead.
Error was: No module named base

2 个回答

1
  1. 打开你的 settings.py 文件。
  2. 'ENGINE': 'sqlite3', 改成 'ENGINE': 'django.db.backends.sqlite3',
  3. 保存文件。

再试一次。

3

你现在用的Django是什么版本?在1.3版本中,老式的数据库指定方法被淘汰了,比如以前你只需要写'sqlite3'。现在你必须写出完整的导入路径,也就是django.db.backends.sqlite3

不过,我记得1.3版本好像还是允许你用老式的方法,只是会提醒你这个方法已经过时了。也许我记错了。如果你用的是最新的版本,那这个老方法几乎肯定是完全被淘汰了,这样出现错误也就能理解了。

总的来说,自从django-utils最后一次更新是在2009年,它实际上已经不再维护了,而Django也在不断更新进步。

撰写回答