Modèle de donnée de Strapi

En deux mot, Strapi est un CMS headless (en français un Système de Gestion de Contenu qui se concentre sur la partie administration). Donc à destination des développeurs.

Et justement, je vais juste énumérer les différentes relations qu’on peut créer entre deux collections dans l’administration pour montrer à quoi elles correspondent dans le code en javascript.

Je fais ce rapport avec Strapi 3.2.4. La doc en anglais pour les relations entre modèles : https://strapi.io/documentation/v3.x/concepts/models.html#relations

Voici la collection que j’ai créé pour l’occasion :

Les différents champs de la collection

Alert

TestDisplayName has one alert
"alert": {
    "model": "alert"
}

Event

TestDisplayName has and belongs to one Event
"event": {
    "model": "event",
    "via": "test_display_name"
}

Et aussi dans event.js

"test_display_name": {
     "via": "event",
     "model": "test-display-name"
}

Documents

TestDisplayName belongs to many documents
"documents": {
     "collection": "document",
     "via": "test_display_name"
}

Et dans document.js

"test_display_name": {
    "via": "documents",
    "model": "test-display-name"
}

Template

Template has many TestDisplayNames
"template": {
    "model": "templates",
    "via": "test_display_names"
}

Et dans templates.js

"test_display_names": {
     "via": "template",
     "collection": "test-display-name"
}

Users

TestDisplayNames has and belongs to many users
"users": {
    "collection": "users",
    "via": "test_display_names",
    "dominant": true
}

Et dans users.js

"test_display_names": {
    "via": "users",
    "collection": "test-display-name"
}

Drafts

TestDisplayName has many Drafts
"drafts": {
    "collection": "drafts"
}

J’espère que ça vous aideras à fixer comment Strapi gère la modélisation de donnée.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.