Когда имя пакета Python отличается от имени импорта

Как упоминалось выше, функции публикации

Meteor.publish("userData", function () {
    return Meteor.users.find({_id: this.userId},
        {fields: {'other': 1, 'things': 1}});
});

и

Meteor.publish("allUserData", function () {
  return Meteor.users.find({}, {fields: {'nested.things': 1}});
});

будут вытеснять данные из коллекции Users.

Подписать с

Tracker.autorun(function () {
    Meteor.subscribe("userData");
    Meteor.subscribe("allUserData");
});

И дополнительные данные автоматически войдут в коллекцию Users и будут доступны в объекте Meteor.user().

1
задан Anthon 26 February 2019 в 14:30
поделиться

2 ответа

В случае сфинкса вы можете макетировать сторонние пакеты с помощью: autodoc_mock_imports

0
ответ дан emcek 26 February 2019 в 14:30
поделиться

Потому что эти два понятия на самом деле не связаны.
Один представляет собой концепцию имен пакетов / модулей на языке Python, а другой - концепцию менеджера пакетов.

Посмотрите на простую команду упаковки с zip:

zip -r MyCoolTool.zip tool.py

Инструмент называется tool, что, вероятно, не является уникальным, и если вы не знаете, что это MyCoolTool, вы не знаете, какой [112 ] это. Когда я загружаю его куда-то, я называю его MyCoolTool, так что теперь у вас более уникальное имя, которое может быть немного более описательным.

Другой момент заключается в том, что пакет pip может включать в себя больше модулей, чем один. PyYAML может, например, включать второй модуль Python yaml2xml в дополнение к yaml.

Наконец, может быть несколько реализаций. PyYAML звучит как чистая реализация Python. Теперь предположим, что вам нужен действительно быстрый синтаксический анализатор, тогда вы можете запрограммировать CYAML на C-backend, но с тем же интерфейсом под именем yaml.

0
ответ дан allo 26 February 2019 в 14:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: