2016-05-17 9 views
1

Ich habe mit Drupal Console gearbeitet, indem ich benutzerdefinierte Entitätstypen sowie ein benutzerdefiniertes Modul erstellt habe, das mit diesem Entitätstyp verbunden sein sollte. Meine Situation ist, dass ich den Haken "hook_ENTITY_TYPE_create()" irgendwie angerufen werden muss (ich nehme an, dass es aufgerufen wird, wenn die Entität standardmäßig erstellt wird).Wie wird hook_ENTITY_TYPE_create() aufgerufen?

Ich glaube, ich muss diesen Haken in irgendeiner Datei implementieren, aber ich bin nicht sicher, welche Datei ich sollte in diesen Hook implementieren.

Meine Modul Dateistruktur ist wie folgt (erzeugt durch Drupal-Konsole)

Drupal Module Structure

Dank

+0

Versuchen Sie, etwas mit Ihrer Event-Entity (oder einer anderen Entität, die Sie im Modul erstellen) zu tun oder ändern Sie eine Entity aus einer anderen Quelle wie Core oder einem Contrib-Modul? – acrosman

+0

@acrosman Es ist eine Event-Entität, die ich mit Drupal Console generiert habe (drupal generate: entity: content) –

Antwort

1

Sie die hook_ENTITY_TYPE_create() in Ihrer .module Datei setzen, aber da Sie in Ihrem Kommentar darauf hingewiesen, dass Sie versuchen, auf die Speicherung der Ereignis Einheit zu reagieren In Ihrem Modul ist es wahrscheinlich besser, wenn Sie die save()-Methode für die Event-Entität selbst überschreiben (ich glaube, dass Konsole Ihnen standardmäßig eine Stub-Methode zur Verfügung stellt).

+0

Würdest du die gleiche Antwort aber bitte für ein Drupal 8-Modul geben können? –

+0

@Martin Joiner: das ist eine Drupal 8 Antwort. Gibt es einige Details, die hilfreich wären? – acrosman

+0

Mein Fehler. Zum Zeitpunkt des Schreibens dachte ich, .modul Dateien wurden gelöscht, wenn Sie von 7 auf 8 verschieben. Eine andere Frage ist jedoch ENTITY_TYPE das gleiche wie benutzerdefinierte Inhaltstyp? Wenn ich also einen benutzerdefinierten Inhaltstyp mit dem Computernamen 'Wurst 'hätte, würde die Funktion' modulename_sause_create() 'heißen? –