Ich versuche herauszufinden, wie Knoten zu Lernzwecken auf die Felder abgebildet werden. Wie wird das gemacht?
In Drupal 7 haben Sie Entitäten und Felder; Felder sind an Entitäten angehängt. Ein Knoten ist eine Implementierung einer Entität (das Knotenmodul implementiert hook_entity_info()
und andere solche Hooks), so dass es Felder haben kann.
Alle relationalen Feld- / Entitätsdaten werden in den Tabellen field_data_field_x
und field_revision_field_x
oder ähnlich gespeichert (letzteres speichert möglicherweise Revisionen von Felddaten, wenn Knotenrevisionen aktiviert sind).
Die entity_id
-Spalte in diesen Tabellen ist die ID des Knotens, und bundle
ist der Inhaltstyp des Knotens. Das revision_id
ist die Revisions-ID des Knotens, wiederum nur dann wirklich nützlich, wenn Knoten-Revisionen aktiviert sind.
AKTUALISIEREN
In der Terminologie von Drupal ist ein Inhaltstyp ein bundle
und bundle
s sind an Entitäten angehängt (in diesem Fall an die Entität node
). Wenn Sie einen neuen Inhaltstyp erstellen, wird dieser in der Tabelle node_type
gespeichert, und wenn die Caches gelöscht werden (wodurch hook_entity_info
für alle Module aufgerufen wird), wird node_entity_info()
Funktion erstellt eine Liste von Bündeln aus den Inhaltstypen (schauen Sie sich das Bit in dieser Funktion an, das startet foreach (node_type_get_names() as $type => $name) {
, node_type_get_names
erhält eine Liste aller Inhaltstypen).
Wie oben besprochen, können Felder an Entitäten angehängt werden, sodass Felder an Knoten mit einem Delta (falls gewünscht) von bundle
angehängt werden können.