Выполнить код JavaScript внутри карты Python / PyMongo / уменьшить - PullRequest
1 голос
/ 21 марта 2012

Мне нужно выполнить динамически создаваемые функции map / Reduce JavaScript в коде Python на MongoDB (в Python я создаю код Strings-Javascript для отображения / уменьшения)Как вызвать эти строки (функции javascript) внутри кода Python и выполнить?

1 Ответ

1 голос
/ 22 марта 2012

Вам нужно будет использовать pymongo.code.Code , где вы создаете экземпляры Code объектов, используя свой код Javascript в качестве единственного строкового аргумента, следующим образом:

maper = Code('function () { for (var key in this) { emit(key, 1); }}')
reducer = Code('function(key, values) { return 1; }')
result = collection.map_reduce(maper, reducer, 'results')

Где result - это экземпляр Collection, который будет содержать результаты вашей карты / сокращения. Я поместил некоторый фиктивный код как в mapper, так и reducer, чтобы проиллюстрировать эту точку. Вы можете обратиться к Map / Reduce Example в документации pymongo для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...