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

[gelöst] Front- und Backend eines Moduls

Eingetragen von ronald (3857)
am 15.08.2015 - 19:07 Uhr in
  • Modul-Entwicklung
  • Drupal 7.x

Ich habe eine spezialfrage an die erfahrenen Modulentwickler:

für eine spezielle Funktion brauche ich eine Maske für Administratoren, wo bestimmte Kerndaten erfasst werden, und eine andere Eingabemaske für Benutzer, wo die erfassten Daten in Verbindung mit einer Eingabe verarbeitet, und ein Ergebnis angezeigt werden soll.

Wenn ich das recht sehe, brauche ich dafür zwei Module?

Packe ich diese dann in gegenseitige dependancy und in ein Package?

Oder ein Modul mit abhängigem require? (require in einer Entscheidungslogik)

Wie würdet ihr das anpacken?

‹ [gelöst] erweiterte Userdaten verarbeiten (drupal 8) [gelöst] Front- und Backend eines Moduls ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

ich formuliere um

Eingetragen von ronald (3857)
am 16.08.2015 - 11:22 Uhr

auch weil ich keine vernünftige Antwort in den Dokus finden konnte.

Ist es möglich und sinnvoll, zwei verschiedene Menü-Hooks in einem Modul zu halten?
Die nächste Folge wären eben auch zwei Forms.

Oder müssen zwei Sichten (User/Admin) in unterschiedliche Module gepackt werden?
Wie packe ich sicher diese beiden Module zusammen, dass niemals das eine ohne das andere in-/deinstalliert werden kann?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ja, das geht. Ging auch schon

Eingetragen von wla (9461)
am 16.08.2015 - 12:30 Uhr

Ja, das geht. Ging auch schon in Drupal 6. Du hast halt bei Formularen mit den Validate und Submit Routinen bestimmte Namenskonventionen einzuhalten, aber es steht nirgendwo, daß der Modulname nicht immer der gleiche sein kann. Bei D6 habe ich z.B. mal ein Modul gehabt, daß drei neue Inhaltstypen angelegt hat. Ich hatte auch gedacht, das dazu verschiedene Module gebraucht würden, aber war kein Problem. Leider ist die Doku für solche Fälle nicht ausreichend und auch in den Büchern findet man dazu nichts.

  • Anmelden oder Registrieren um Kommentare zu schreiben

also werde ich noch ein bisschen basteln müssen

Eingetragen von ronald (3857)
am 16.08.2015 - 13:36 Uhr

immerhin bekomme ich einen Menüpunkt angezeigt.

Beim Admin-Menü gibt es wohl noch ein Pfadproblem, weshalb zwar in der Modulliste ein Config-Link angezeigt wird, aber das eigentliche Menü nicht öffnet.
Es wird auch in der Admin-Seite nicht angezeigt.

der Pfad muss doch einfach "admin/config" sein, darafu folgt ein frei zu vergebender Gruppenname, und dann der Menüpunkt - oder habe ich da etwas vergessen?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Examples-Modul

Eingetragen von stBorchert (6003)
am 17.08.2015 - 11:47 Uhr

moin.
Schau Dir mal das Modul [do:examples Examples] an, dort sind sehr viele Entwicklungskonzepte ausführlich erklärt.
Unter anderem wird darin auch gezeigt, wie Du eine eigene Menükategorie anlegen kannst.

hth,

 Stefan

  • Anmelden oder Registrieren um Kommentare zu schreiben

ich stelle gerade fest

Eingetragen von ronald (3857)
am 19.08.2015 - 18:26 Uhr

dass dieses Menü nicht angezeigt wird, bzw. nur die automatisch angelegten hidden fields erstellt werden.

Habe ich da etwas verpasst (außer dass der submitbutton natürlich noch fehlt)

function whois_form($form, &$form_state) {
  $form['domainname'] = array(
    '#type' => 'textfield',
    '#title' => t('domain name'),
    '#default_value' => '',
    '#size' => 15,
    '#maxlength' => 20,
    '#description' => t('Please enter the complete domain name of your interest, including the dot and TLD, but not subdomains'),
    '#required' => TRUE
  );
 
  return whois_form($form); // diese Zeile kommt mir komisch vor, habe ich aber aus einem Beispiel übernommen, und nur den Namen ausgetauscht.
}

  • Anmelden oder Registrieren um Kommentare zu schreiben

Das sollte heißen return

Eingetragen von wla (9461)
am 19.08.2015 - 19:21 Uhr

Das sollte heißen return $form;

  • Anmelden oder Registrieren um Kommentare zu schreiben

es sah' sehr nach recursivaufruf aus ;-)

Eingetragen von ronald (3857)
am 19.08.2015 - 19:44 Uhr

dennoch kommt das Formularfeld nicht.

Caches habe ich natürlich gelöscht.

Ich bin im Moment nicht mehr sehr konzentrationsfähig. Wahrscheinlich ist irgendwo ein Tippfehler.

Der Pfad zum config, das ist das andere Ende des Systems, funktionier leider auch nicht.

$items['admin/config/content/internet/server_settings'] = array(
    'title' => 'Server registration',
    'description' => 'Registration for servers to be requested',
    'page callback' => 'drupal_get_form',
    'page arguments' => array('whois_server_form'),
    'access arguments' => array('access administration pages'),
    'type' => MENU_NORMAL_ITEM
  );

ist unsichtbar.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Roland,das sieht für

Eingetragen von Hyp1 (1463)
am 20.08.2015 - 10:39 Uhr

Hallo Roland,

das sieht für mich so aus, dass Du die Form Rekursiv aufrufst:

function whois_form($form, &$form_state) {
  $form['domainname'] = array(
    '#type' => 'textfield',
    '#title' => t('domain name'),
    '#default_value' => '',
    '#size' => 15,
    '#maxlength' => 20,
    '#description' => t('Please enter the complete domain name of your interest, including the dot and TLD, but not subdomains'),
    '#required' => TRUE
  );

  return whois_form($form); // diese Zeile kommt mir komisch vor, habe ich aber aus einem Beispiel übernommen, und nur den Namen ausgetauscht.
}

mach dort einfach:
  return $form; // diese Zeile kommt mir komisch vor, habe ich aber aus einem Beispiel übernommen, und nur den Namen ausgetauscht.

Lieber Gruss

Robert

  • Anmelden oder Registrieren um Kommentare zu schreiben

sah für mich auch komisch aus

Eingetragen von ronald (3857)
am 20.08.2015 - 13:07 Uhr

hatte ich aber von einer Vorlage übernommen.

Aber die Änderung hat es nicht gebracht.

Ich war aber auch verflixt müde gestern, und jetzt sitze ich wieder hinter einem Proxy, der mir keine Zugriffe erlaubt.

Heute Abend bin ich wieder zu Hause. Hoffentlich nicht so geschafft wie gestern.

  • Anmelden oder Registrieren um Kommentare zu schreiben

so, ich bin einen Schritt weiter

Eingetragen von ronald (3857)
am 22.08.2015 - 11:06 Uhr

der Userteil funktioniert prinzipiell (es fehlen noch Funktionen. Das ist aber nicht das Problem).

Jetzt geht es darum, was ich ursprünglich fragte:

ich habe ein Modul, das habe ich whois getauft, dieses hat ein Usermenue und ein User-Formular.
Es hat aber auch ein config_menue und ein config_formular.

Wie muss ich nun diese benennen, dass sie dann auch in der config seite auftauchen?

function whois_server_menu() {
  $items = array();

  $items['admin/config/content/internet/server_settings'] = array(
    'title' => 'Server registration',
    'description' => 'Registration for servers to be requested',
    'page callback' => 'drupal_get_form',
    'page arguments' => array('whois_server_form'),
    'access arguments' => array('access administration pages'),
    'type' => MENU_NORMAL_ITEM
  );

  return $items;
}

funktionier leider nicht.

  • Anmelden oder Registrieren um Kommentare zu schreiben

ich finde leider nichts passendes

Eingetragen von ronald (3857)
am 24.08.2015 - 09:49 Uhr

wie sind die naming conventions, wenn ich mehr als einen Menüpunkt für ein Modul möchte, und jedes dieser Menues ein eigenes Form aufrufen soll.

Hier geht es um zwei - ein Userform, das vom Usermenue aufgerufen werden kann, und ein settings-Form, das aus der Admin/settings aufgerufen werden soll.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Ronald,Du musst eine

Eingetragen von Hyp1 (1463)
am 24.08.2015 - 15:56 Uhr

Hallo Ronald,

Du musst eine System Settings Form machen, damit diese in den Settings auftaucht.
Guckst Du hier:
https://www.drupal.org/node/206761

Liebe Grüsse

Robert

  • Anmelden oder Registrieren um Kommentare zu schreiben

auf einen admin-hook wäre ich nicht gekommen

Eingetragen von ronald (3857)
am 25.08.2015 - 07:43 Uhr

Probiere ich aus, wenn ich wieder zeit für meine eigenen Projekte habe.
Wird wahrscheinlich wieder Wochenende werden.

Ich möchte nichts versprechen, aber ich werden versuchen, dieses kleine Projekt zu einem Tutorial zusammen zu fassen.

Ich glaube, das ist ganz gut geeignet, weil es ein paar Aspekte in Kombination berücksichtigt.

Abgesehen davon, dass dieses Modul, an dem ich gerade bastle, auch schon des öfteren angefragt wurde.

Schaumamal

  • Anmelden oder Registrieren um Kommentare zu schreiben

ich habe es angesehen - umsetzen kann ich es gerade nicht

Eingetragen von ronald (3857)
am 25.08.2015 - 09:31 Uhr

aber ich sehe, dass ein ganz normaler menue-hook darin ist.

Da ich aber bereits modulename_menue vergeben habe für den Userzugang, kann ich dies ja nicht nochmal verwenden.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du kannst Mit einem Aufruf

Eingetragen von wla (9461)
am 25.08.2015 - 09:52 Uhr

Du kannst Mit einem Aufruf von hook_menu viele Pfade setzen. Items ist schließlich ein Array und Du gibst den gesamten Array zurück.

  • Anmelden oder Registrieren um Kommentare zu schreiben

das heißt

Eingetragen von ronald (3857)
am 25.08.2015 - 10:34 Uhr

ich kann das Array schachteln, und mehrere Menues definieren - klingt hervorragend - muss ich unbedingt ausprobieren.

Gibt es übrigens irgendwo eine Liste der Begriffe, die bei "access rights" verwendet werden können?

  • Anmelden oder Registrieren um Kommentare zu schreiben

und wieder habe ich einen neuen Teil der Struktur kennen gelernt

Eingetragen von ronald (3857)
am 27.08.2015 - 07:28 Uhr

Es ist recht einfach, wenn man es weiß.

Einfach mehrere Einträge in der Menuestruktur basteln, der Rest ergibt sich von selbst.

Jetzt gibt es noch ein bisschen Detailarbeit, dann kann es laufen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • 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
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 1 Woche 6 Tagen
  • Hey danke
    vor 2 Wochen 15 Stunden
  • Update: jetzt gibt's ein
    vor 2 Wochen 1 Tag
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 5 Tagen
  • Da scheint die Terminologie
    vor 2 Wochen 5 Tagen
  • Kannst doch auch alles direkt
    vor 3 Wochen 3 Tagen
  • In der entsprechenden View
    vor 3 Wochen 3 Tagen
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 3 Tagen
  • gelöst
    vor 5 Wochen 6 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 6 Wochen 15 Stunden

Statistik

Beiträge im Forum: 250233
Registrierte User: 20451

Neue User:

  • ByteScrapers
  • Mroppoofpaync
  • 4aficiona2

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
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