"* не разрешено схемой"

Я довольно плохо знаком с Телескопом и Метеором.

Я добавил пользовательское поле как таковое:

Users.addField({
    fieldName: 'apiToken',
    fieldSchema: {
        type: String,
        autoform: {
            group: 'API Token',
            label: 'Token'
        },
        optional: true,
        editableBy: ["member", "manager", "admin"]
    }
});

Я получил поле для отображения в настройках пользователя, но всякий раз, когда я пытаюсь что-то ввести и отправить, появляется сообщение об ошибке "apiToken is not allowed by the schema".

Я не уверен, что это проблема с телескопом или метеором.

Нужно ли редактировать схему в MongoDB?

1 ответ

Решение

Я решил это благодаря Sacha.

При добавлении нового поля в Telescope вы должны объявить его как на клиенте, так и на сервере.

package.js

Package.onUse(function (api) {
    // client
    api.addFiles([
        "strawberry_fields.js"
    ], "client");

    // server
    api.addFiles([
        "strawberry_fields.js"
    ], "server");
}

strawberry_fields.js

Users.addField({
    fieldName: 'Likes strawberries',
    fieldSchema: {
        type: String,
        autoform: {
            group: 'Strawberries',
            label: 'Strawberries'
        },
        optional: true,
        editableBy: ["member", "manager", "admin"]
    }
});
Другие вопросы по тегам