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

.install wird nicht ausgeführt

Eingetragen von Hroudtwolf (6)
am 21.05.2011 - 11:04 Uhr in
  • Modul-Entwicklung
  • Drupal 7.x oder neuer

Hallo,

Ich habe vor 2 Tagen angefangen mich mit der Modulentwicklung für Drupal zu beschäftigen und kaufte mir dahingehend ein eBook.

Nachdem ich mein erstes Modul gemäß den darin gefundenen Informationen erfolgreich programmierte, wollte ich mir auch eine automatisierte Installationsroutine für das Erstellen von Datenbank-Tabellen in einer ".install" Datei programmieren.
Doch als ich das Modul zipte, hochlud und nachschaute ob die Tabellen erstellt wurden, fand ich sie nicht.
Für mich ein Zeichen dass die Datei wohl nicht ausgeführt wurde.

Meine Datei enthält den Namen des Moduls mit angehängtem ".install" (ohne Gänsefüsschen).
Und die Routine zur Erstellung des Schemas trägt den Namen des Moduls mit angehängtem "_schema".
Gibt es eventuell noch weitere Konventionen die ich vergessen habe zu beachten?

Es erscheint beim Installieren des Moduls keine Fehlermeldung, keine Warnung oder irgendein Hinweis über dieses Problem.

Hier mal der Schema-Hook aus meiner ".install" Datei.

<?php

 
function staffmanagement_schema()
  {  
 

   
$schema ['staffmanagement_members'] = array(
     
'description' => 'The table of member informations.',
     
'fields' => array(
         
'memberid' => array(
         
'description' => 'The primary identifier for a member.',
         
'type' => 'serial',
         
'unsigned' => TRUE,
         
'not null' => TRUE,
        ),
         
'firstname' => array(
         
'description' => 'The first name of the member.',
         
'type' => 'varchar',
         
'length' => 20,
         
'not null' => TRUE,
         
'default' => '',
        ),
         
'lastname' => array(
         
'description' => 'The last name of the member.',
         
'type' => 'varchar',
         
'length' => 20,
         
'not null' => TRUE,
         
'default' => '',
        ),
         
'street' => array(
         
'description' => 'The postial address part: street',
         
'type' => 'varchar',
         
'length' => 32,
         
'not null' => TRUE,
         
'default' => '',
        ),       
         
'zip' => array(
         
'description' => 'The postial address part: zip',
         
'type' => 'varchar',
         
'length' => 5,
         
'not null' => TRUE,
         
'default' => '',
        ),
         
'city' => array(
         
'description' => 'The postial address part: city',
         
'type' => 'varchar',
         
'length' => 20,
         
'not null' => TRUE,
         
'default' => '',
        ),
         
'email' => array(
         
'description' => 'The email adress of the member.',
         
'type' => 'varchar',
         
'length' => 32,
         
'not null' => TRUE,
         
'default' => '',
        ),
         
'roleid' => array(
         
'description' => 'ID of the role the member.',
         
'type' => 'int',
         
'unsigned' => TRUE,
         
'not null' => TRUE,
        ),
         
'salary' => array(
         
'description' => 'Annual salary.',
         
'type' => 'float',
         
'not null' => TRUE,
        ),
         
'created' => array(
         
'description' => 'Member since...',
         
'type' => 'int',
         
'not null' => TRUE,
        ),       
      ),
     
'primary key' => array('memberid')
    );
 
   
   
$schema ['staffmanagement_roles'] = array (
     
'description' => 'The table of role informations.',
     
'fields' => array(
         
'roleid' => array(
         
'description' => 'The primary identifier for a role.',
         
'type' => 'serial',
         
'unsigned' => TRUE,
         
'not null' => TRUE,
        ),
         
'salary' => array(
         
'description' => 'Regular annual salary.',
         
'type' => 'float',
         
'not null' => TRUE,
        ),
         
'rolename' => array(
         
'description' => 'The name of the role.',
         
'type' => 'varchar',
         
'length' => 32,
         
'not null' => TRUE,
         
'default' => '',
        ),
      ),
     
'primary key' => array('roleid')
    );
   
    return
$schema;
  }

?>

Liebe Grüsse
Marc Sven Rudolf

‹ [gelöst] Link in Drupaltabelle erzeugen PHP Zwei Arrays - doppelte Werte überschreiben ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Die .install-Datei wird nur

Eingetragen von wla (9463)
am 21.05.2011 - 12:03 Uhr

Die .install-Datei wird nur bei der ersten Aktivierung ausgeführt oder wenn eine Update-Funktion darin enthalten ist. Am einfachsten Dein Modul noch einmal deaktivieren und dananch neu aktivieren, dann sollte .install durchlaufen werden.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi, ... und vielen Dank für

Eingetragen von Hroudtwolf (6)
am 21.05.2011 - 18:11 Uhr

Hi,

... und vielen Dank für die schnelle Antwort.

Ich hab deinen Tipp beherzigt, doch ist es ohne Erfolg geblieben.
Es wird nach wie vor die Tabelle nicht installiert. :-)

LG
Marc Sven Rudolf

  • Anmelden oder Registrieren um Kommentare zu schreiben

Knall mal eine

Eingetragen von Exterior (2903)
am 21.05.2011 - 18:39 Uhr

Knall mal eine update-Funktion in deine install-Datei, führe dort nochmal eine Schema-Installation durch und mach dann ein update über die update.php

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi, Letztlich klappte es

Eingetragen von Hroudtwolf (6)
am 22.05.2011 - 20:51 Uhr

Hi,

Letztlich klappte es dann.
Vielen Dank für die Hilfe.

LG
Hroudtwolf

  • Anmelden oder Registrieren um Kommentare zu schreiben

Und wie genau hat es

Eingetragen von Exterior (2903)
am 22.05.2011 - 21:35 Uhr

Und wie genau hat es geklappt?

Übrigens, schreibe doch bitte im ersten Beitrag oben noch "[gelöst]" vor den Titel.

  • Anmelden oder Registrieren um Kommentare zu schreiben

hook_install

Eingetragen von stBorchert (6003)
am 23.05.2011 - 06:48 Uhr

Hallo.

Hroudtwolf schrieb

Es wird nach wie vor die Tabelle nicht installiert. :-)

Ohne Implementierung von [api:hook_install:7] kann das Schema auch nicht angewendet werden.

Btw.: längere Code-Fragmente bitte nicht hier direkt posten sondern über pastebin oder ähnliche Anbieter.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • 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.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
Weiter

Neue Kommentare

  • Arrrrg. Nix Tabelle :-D /*
    vor 4 Tagen 10 Stunden
  • Textboxen mit Tabelle
    vor 4 Tagen 17 Stunden
  • Du sollst ja auch keine
    vor 4 Tagen 17 Stunden
  • Theme
    vor 4 Tagen 18 Stunden
  • Welches Theme benutzt du
    vor 4 Tagen 23 Stunden
  • Mit Responsive Raster hatte
    vor 5 Tagen 13 Stunden
  • Hallo Alex,um das Häkchen
    vor 5 Tagen 22 Stunden
  • Modul view_unpublished
    vor 1 Woche 1 Stunde
  • Modul "override node options"
    vor 1 Woche 20 Stunden
  • Im Grunde ist dass ein
    vor 1 Woche 3 Tagen

Statistik

Beiträge im Forum: 250270
Registrierte User: 20477

Neue User:

  • Robertnobia
  • AltonRaf
  • JeffreyPaf

» Alle User anzeigen

User nach Punkten sortiert:
wla9463
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 28 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