import { ResourceOptions } from '@nocobase/resourcer'; import { Model, ModelCtor } from '@nocobase/database'; export default async (ctx, next) => { const { resourceName, resourceKey } = ctx.action.params; const M = ctx.db.getModel(resourceName) as ModelCtor; const model = await M.findByPk(resourceKey); const Field = ctx.db.getModel('fields') as ModelCtor; const field = await Field.findOne({ where: { collection_name: resourceName, type: 'string', }, order: [['sort', 'asc']], }); ctx.body = { pageTitle: field ? model.get(field.get('name')) : model.get(M.primaryKeyAttribute), ...model.toJSON(), }; await next(); };