Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module › Modul-Entwicklung ›

D7: Custom Modul, Entity API, Save/Delete Methode erweitern - entity_class oder entity_controller_class verwenden?

Eingetragen von TommyL (4)
am 08.02.2012 - 19:21 Uhr in
  • Modul-Entwicklung

Hallo liebe Community,

für ein Custom Modul, welches auf einer "eigenen" Entity basiert möchte ich die Speichern/Löschen Funktion erweitern. Die Entity wurde mit Hilfe der Entity API in Drupal 7 erstellt.

Die Entity API Standartdefinition der controller- und entity-class von hook_entity_info() sieht wie folgt aus:

function mymodule_entity_info() {
  $return['mymodule'] = array(
    'entity class' => 'Entity',
    'controller class' => 'EntityAPIController',
    [...]
   );
}

Um nun die Speichern/Löschen Funktion der Entity zu erweiteren habe ich eine eigene 'controller class' in hook_entity_info() definiert welche die Klasse EntityAPIController vererbt:

function mymodule_entity_info() {
  $return['mymodule'] = array(
    [...]
    'controller class' => 'MymoduleController',
    [...]
   );
}

class MymoduleController extends EntityAPIController {
  public function __construct($entityType) {
    parent::__construct($entityType);
  }
  public function save($entity, DatabaseTransaction $transaction = NULL) {
   // meine Anpassungen
   // z.b. Speicherung von Daten in einer Tabelle für Relationen zur aktuellen Entity

   // vererbte save() Methode aufrufen
   parent::save($entity, $transaction);
  }
}

Funktioniert auch einwandfrei - ein anderer Weg wäre nicht die Controller Class sondern die Entity Class zu vererben - gibt es hier eine Grundregel, wo liegen die Unterschiede zwischen beiden Varianten, wie würdet Ihr es machen?

Vielen Dank schonmals vorab.

Grüße TommyL

‹ Datenbankschema Installieren Ads sind nicht sichtbar ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Drupal CMS installieren
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
Weiter

Neue Kommentare

  • Ich habe ja keine Angst vor
    vor 1 Tag 9 Stunden
  • Ist grundsätzlichmachbar – aber nichts für „einfach mal schnell“
    vor 3 Tagen 15 Stunden
  • Vielen Dank erst einmal, aber
    vor 5 Tagen 9 Stunden
  • Du hast die "Trusted host
    vor 5 Tagen 17 Stunden
  • Bitte genauer den aktuellen Lösungs-Ansatz beschreiben
    vor 2 Wochen 4 Tagen
  • Git und rsync sind die wichtigsten Werkzeuge
    vor 3 Wochen 1 Tag
  • Arrrrg. Nix Tabelle :-D /*
    vor 7 Wochen 3 Tagen
  • Textboxen mit Tabelle
    vor 7 Wochen 3 Tagen
  • Du sollst ja auch keine
    vor 7 Wochen 3 Tagen
  • Theme
    vor 7 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250281
Registrierte User: 20494

Neue User:

  • Robertolix
  • DavidBit
  • JeraldZeF

» Alle User anzeigen

User nach Punkten sortiert:
wla9464
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 17 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association