Plone/Paster - Что может заставить "paster addcontent dexterity_content" не работать?

Я пытаюсь использовать Paster для создания контента типа ловкости. Я сделал новую автономную установку Plone 4.3.4 в целевой папке, отличной от той, с которой я ранее работал, так что buildout-cache будет чистым.

Я использую ОС Ubuntu 14.04. Итак, в моей папке загрузок, в папке установщика, которую я распаковал, я печатаю в терминале:

./install.sh --target=/home/myusername/Plone2 --instance=MyProject standalone

Это устанавливает правильно. Затем я иду в MyProject в Plone2. Я изменяю сборку, чтобы изменить мой пароль, и запускаю сборку:

buildout -c develop.cfg

Затем я перехожу в папку src и создаю новый продукт с zopeskel:

../bin/zopeskel dexterity project.house

Затем я редактирую свою сборку и под яйца добавляю project.house, а в разработке - src / project.house. Затем я снова запускаю buildout, и он корректно выстраивается. Затем в папке project.house под источниками я пытаюсь запустить paster.

../../bin/paster addcontent dexterity_content

Тогда я получаю сообщение об ошибке:

Traceback (most recent call last):
  File "../../bin/paster", line 264, in <module>
    sys.exit(paste.script.command.run())
  File "/home/pjdowney/Plone2/buildout-cache/eggs/PasteScript-1.7.5-py2.7.egg/paste/script/command.py", line 104, in run
    invoke(command, command_name, options, args[1:])
  File "/home/pjdowney/Plone2/buildout-cache/eggs/PasteScript-1.7.5-py2.7.egg/paste/script/command.py", line 143, in invoke
    exit_code = runner.run(args)
  File "/home/pjdowney/Plone2/buildout-cache/eggs/PasteScript-1.7.5-py2.7.egg/paste/script/command.py", line 238, in run
    result = self.command()
  File "/home/pjdowney/Plone2/buildout-cache/eggs/ZopeSkel-2.21.2-py2.7.egg/zopeskel/localcommands/__init__.py", line 70, in command
    self._extend_templates(templates, args[0])
  File "/home/pjdowney/Plone2/buildout-cache/eggs/ZopeSkel-2.21.2-py2.7.egg/zopeskel/localcommands/__init__.py", line 204, in _extend_templates
    tmpl = entry.load()(entry.name)
  File "/home/pjdowney/Plone2/buildout-cache/eggs/setuptools-7.0-py2.7.egg/pkg_resources.py", line 2184, in load
    ['__name__'])
ImportError: No module named dexterity.localcommands.dexterity

Я недавно установил Plone 4.3.6 в другую целевую папку. К сожалению, я никогда не пробовал использовать Paster, потому что я создавал контент для ловкости через Интернет. Может ли переход на 4.3.6 все испортить?

Моя предыдущая целевая папка все еще работает.

2 ответа

Решение

Бросок ""ImportError: ни один модуль с именем dexterity.localcommands.dexterity" + "plone"в поисковик не ведет прямо к Plone 4.3.4 - ImportError: ни один модуль с именем dexterity.localcommands.dexterity, где С. МакМахон утверждает, что это ошибка, о которой сообщается в https://github.com/plone/Installers-UnifiedInstaller/issues/33 и уже исправлен для установщиков Plone-5, но не для Plone-4.

Вероятно, ошибка вызвана самой последней версией setuptools и FWIW, однажды я случайно нашел эту информацию в твитах " глифа", которые выглядят полезными:

"Объявление о государственной службе: упростите жизнь @dstufft и не используйте пакет`python-pip 'из Debian или Ubuntu. Он не работает ". (1)

"Вместо этого установите pip и virtualenv с помощью get-pip.py, в идеале, в свой домашний каталог. (К сожалению, https://pip2014.com/ по-прежнему актуален.)" (2)

Я более подробно рассмотрю сценарий спасения get-pip.py, когда снова запускаю пробники, но пока я просто ничего не обновляю:-D

(1) https://twitter.com/glyph/status/640980540691234816(2) https://twitter.com/glyph/status/640980540691234816

(скопировано из моего собственного комментария по аналогичной проблеме в github)

У меня были такие бои в прошлом с zopeskel / paster. В настоящее время, хотя я избегаю этого.... выбирая использовать:

  • мрбоб для шаблонных яиц
  • создание типов ловкости через Интернет
  • ИЛИ, альтернативно, создавая типы ловкости непосредственно в коде без шаблонов - гораздо меньше шаблонного кода в архетипах ловкости

Я подозреваю, что ваша проблема в том, что в вашей установке 4.3.6 возможно обновление zopeskel или одной из его зависимостей до чего-то другого с различными требованиями к локальным командам / шаблонам. Если вы хотите продолжить эту борьбу (и я не рекомендую ее), то вы можете попробовать закрепить все ваши зависимости zopeskel до последних версий (хотя Zopeskel должен быть меньше 3.0, я считаю)

Другие вопросы по тегам