Запланированная работа в Parse.com - PullRequest
0 голосов
/ 18 мая 2019

Я хочу запустить Cloud Code с запланированным заданием в Parse. (Sashido.io)

randomMentor Функция выбирает некоторый объект в моем Class со случайным числом и сохраняет его Today Класс. Когда я вызываю этот метод из Swift через PF.Cloud.callFunctionInBackground, он работает очень хорошо.

Но я не мог работать с Parse Dashboard . Я создал запланированное задание на панели инструментов с именем pickTodaysMentor, и оно пытается выполнить с закрытием Parse.cloud.run. Но он всегда возвращается с: error loading cloud code Parse.Cloud.define is not a function

есть мои функции. Js;

Parse.Cloud.define('randomMentor', async function (request, response) {
    var Mentor = Parse.Object.extend('Mentor');
    var countQuery = new Parse.Query(Mentor);
    const count = await countQuery.count();
    const query = new Parse.Query('Mentor');
    const randomInt = Math.floor(Math.random() * count);
    query.equalTo('position', randomInt);
    query.limit(1); // limit to at most 10 results
    const results = await query.find();

    const Today = Parse.Object.extend('Today');
    const today = new Today();
    today.set('mentor', results[0]);
    today.save()
        .then((today) => {
            response.success("Today Mentor Created.");
        }, (error) => {
            response.error(error);
        });
    response.success("Today Mentor Created.");
});

Parse.Cloud.job('pickTodaysMentor', (request) => {
    const { params, headers, log, message } = request;
    message("I just started");
    Parse.Cloud.run('randomMentor', {}, {
        success: function (result) {
        },
        error: function (error) {
        }
    });
});

Я не являюсь разработчиком JS, поэтому не смог найти никакого решения. Я копал учебники, руководства и поисковик, но не повезло. Я думаю, что ошибка слишком общая для поиска проблемы.

Что ты думаешь?

1 Ответ

0 голосов
/ 20 мая 2019

Полученная ошибка означает, что ваша функция облачного кода недействительна.

Это должно выглядеть примерно так в версиях Parse Server 3.0.0 и выше:

Parse.Cloud.define("function", async (request) => {
  return "Hello World";
});
...