【问题标题】:Django/cookiecutter-django Error: "AttributeError: 'Path' object has no attribute 'endswith''" with manage.py makemigrationsDjango/cookiecutter-django 错误:“AttributeError:'Path' 对象没有属性 'endswith''”与 manage.py makemigrations
【发布时间】:2019-10-06 12:59:07
【问题描述】:

我一直在尝试使用 cookiecutter-django 项目设置 Django 用饼干切割机https://github.com/pydanny/cookiecutter-django.git 当我最后运行./manage.py makemigrations 时,我得到了这个错误输出。

我在virturalenv中的python版本是Python 3.5.2

这是控制台输出的尾部,而不是来自文件。 堆栈溢出不允许我在没有更多其他文本的情况下发布所有长错误输出。

  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/site-packages/django/db/models/base.py", line 156, in __new__
    new_class.add_to_class(obj_name, obj)
  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/site-packages/django/db/models/base.py", line 321, in add_to_class
    value.contribute_to_class(cls, name)
  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/site-packages/django/db/models/fields/related.py", line 1588, in contribute_to_class
    self.remote_field.through = create_many_to_many_intermediary_model(self, cls)
  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/site-packages/django/db/models/fields/related.py", line 1057, in create_many_to_many_intermediary_model
    'verbose_name': _('%(from)s-%(to)s relationship') % {'from': from_, 'to': to},
  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/site-packages/django/utils/functional.py", line 192, in __mod__
    return str(self) % rhs
  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/site-packages/django/utils/functional.py", line 156, in __text_cast
    return func(*self.__args, **self.__kw)
  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/site-packages/django/utils/translation/__init__.py", line 79, in gettext
    return _trans.gettext(message)
  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/site-packages/django/utils/translation/trans_real.py", line 285, in gettext
    _default = _default or translation(settings.LANGUAGE_CODE)
  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/site-packages/django/utils/translation/trans_real.py", line 198, in translation
    _translations[language] = DjangoTranslation(language)
  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/site-packages/django/utils/translation/trans_real.py", line 99, in __init__
    self._add_local_translations()
  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/site-packages/django/utils/translation/trans_real.py", line 151, in _add_local_translations
    translation = self._new_gnu_trans(localedir)
  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/site-packages/django/utils/translation/trans_real.py", line 123, in _new_gnu_trans
    fallback=use_null_fallback,
  File "/usr/lib/python3.5/gettext.py", line 428, in translation
    mofiles = find(domain, localedir, languages, all=True)
  File "/usr/lib/python3.5/gettext.py", line 396, in find
    mofile = os.path.join(localedir, lang, 'LC_MESSAGES', '%s.mo' % domain)
  File "/root/painlesslanguage/painlesslanguageenv/lib/python3.5/posixpath.py", line 84, in join
    elif not path or path.endswith(sep):
AttributeError: 'Path' object has no attribute 'endswith'


如果重要的话,我将 TIME_ZONE cookiecutter-django 设置选项留空。

【问题讨论】:

  • 这是在哪一行/文件上?
  • 我在重新安装后更新了帖子。控制台输出

标签: python django python-3.x cookiecutter-django


【解决方案1】:

这似乎是一个难以修复甚至调试的错误。 一些用户在 INSTALLED_APPS 声明中没有在 settings.py 中正确包含静态 url 时出现此错误。

但是,当我切换 python 版本时,我得到了这个错误。 我最终通过重新安装python并将pyenv python重新链接到brew以某种方式解决了它(当时)。

然而,现在它又回来了。必须有一种方法来调试它。 所有堆栈跟踪都指向 python 安装中的文件或仅指向设置文件。但是如果您的设置文件看起来不错,那么真的很难知道如何修复它。在检查了你的 settings.py INSTALLED_APPS(检查没有尾随的逗号)后,id 建议重新安装 python,看看是否有帮助。

如果这不起作用,那么帮助我的是打印出正在安装的应用程序。为此,您必须将打印行添加到引发错误的 python/django 代码中。默认情况下,此信息不会发送到应用程序层,尽管它应该发送。如果您再次更改 py 安装,这些将被删除。所以它是一种帮助你调试的临时/本地方式。如果无法导入应用程序,框架确实应该发送名称信息。通过添加这些行,我发现我的导入出了什么问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-24
    • 2016-04-15
    • 2021-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-25
    相关资源
    最近更新 更多