Salta ai contenuti

Viste Entità

Le viste entità ti permettono di aggiungere schede personalizzate alla pagina di dettaglio dell’entità accanto al modulo predefinito. Usale per:

  • Anteprime in tempo reale (anteprima sito web, contenuto renderizzato)
  • Viste di dati correlati (articoli dell’ordine, entità figlie)
  • Analisi o grafici
  • Editor personalizzati (testo RTF, editor di mappe)
import { defineCollection } from "@rebasepro/cms-types";
const articlesCollection = defineCollection({
slug: "articles",
table: "articles",
name: "Articles",
properties: { /* ... */ },
admin: {
entityViews: [
{
key: "preview",
name: "Preview",
Builder: ArticlePreview
},
{
key: "related",
name: "Related Articles",
Builder: RelatedArticlesView
}
]
}
});
import type { EntityCustomViewParams } from "@rebasepro/cms-types";
function ArticlePreview({
entity,
modifiedValues,
formContext
}: EntityCustomViewParams) {
// modifiedValues has the unsaved, live form values
const title = modifiedValues?.title ?? entity?.values?.title;
const content = modifiedValues?.content ?? entity?.values?.content;
return (
<div className="p-8 max-w-2xl mx-auto">
<h1 className="text-3xl font-semibold">{title}</h1>
<div dangerouslySetInnerHTML={{ __html: content }} />
</div>
);
}
Proprietà Tipo Descrizione
entity Entity L’entità salvata (null per nuove entità)
modifiedValues EntityValues Valori correnti del modulo non salvati (aggiornati in tempo reale mentre l’utente digita)
formContext FormContext Contesto completo del modulo
collection CollectionConfig Definizione della collezione

Vista entità con modulo secondario

Le viste appaiono come schede. Puoi configurarne la posizione:

entityViews: [
{
key: "preview",
name: "Preview",
Builder: ArticlePreview,
position: "start" // Appare prima della scheda del modulo predefinito
}
]