javascript — Пользовательский код контроллера для Strapi Beta (3.0)

Пользовательский код контроллера для Strapi Beta (3.0)

У меня есть код из предыдущей версии Strapi, и бета-версия контроллеров сильно отличается. Добавлен шаблон multipart / santification, и что-то изменилось. Не понимаю, как интегрировать мой объект заказа и полосу заряда.

Вот образец, добавленный:

  module.exports = { async create(ctx) { // New Boilerplate added with Strapi Beta - how to integrate this with custom stuff below? let entity; if (ctx.is('multipart')) { const { data, files } = parseMultipartData(ctx); entity = await service.create(data, { files }); } else { entity = await service.create(ctx.request.body); } return sanitizeEntity(entity, { model }); } } 

Вот мой пользовательский код (имя контроллера Order.js)

  const { address, amount, products, postalCode, token, city } = ctx.request.body; // Send charge to Stripe const charge = await stripe.charges.create({ amount: amount * 100, currency: 'usd', description: `Order ${new Date(Date.now())} - User ${ctx.state.user.id}`, source: token }); // Create order in database const order = await strapi.services.order.add({ user: ctx.state.user.id, address, amount, products, postalCode, city }); 

Похоже, я бы добавил свой код ко второй части оператора if, поскольку он не является составным, а не пользовательским, если «сущность» — это реальное имя переменной, нужное Strapi, или переменная-заполнитель, которую я переименую в «порядок». Код отлично работает в Alpha , но прочитайте документы Strapi, и нет никаких объяснений того, как использовать эту структуру с переменными «entity», {model} и «data».

Понравилась статья? Поделиться с друзьями:
JavaScript & TypeScript
Adblock
detector