Idee einer Funktion, aber wie setze ich es um?
am 22.05.2008 - 19:50 Uhr in
Guten Abend,
ich habe eine konkrete Idee wie ich meine bestehende Drupalseite um funktionen erweitern will, allerdings fehlt mir der Ansatz, wie ich an die Sache ran gehe.
Es geht um folgendes:
Im Spiel Guildwars kann jeder mit einem Account verschiedene Charaktere erstellen, diese Charaktere machen Missionen und schliessen diese Missionen mit einem gewissen Status ab. Jetzt möchte ich jedem Gildenmitglied (das sind meine Drupal-Benutzer) die Möglichkeit geben seine Fortschritte mit den einzelnen Charakteren übersichtlich im Drupal zu haben. Und wenn die Frage nach Mission xy kommt, er gleich sieht: "Ah, da hab ich doch ..."
Sowei so gut. Die Tabellen in der Datenbank und die sql-selects und -inserts waren recht zügig erstellt, nur stehe ich gerade vor einem Berg und weiss nicht wie ich den ersten Schritt machen soll.
Benutzer sollen die Möglichkeit haben die Charaktere (=Eintrag in einer Tabelle) selber anzulegen und zu löschen.
Benutzer sollen den Status der Charaktere in den Verschiedenen Missionen selbst verändern.
Ich stelle mir eine Übersichtsseite (Status aller Charaktere auf einem Blick) vor, klickbare Links auf die Namen der Charaktere um diese zu editieren. Dann kann ich den Status des Charakters ändern indem ich die Mission als Item in einem Dropdown Feld wähle und den Status eintrage. "Speichern" versengt den Datensatz in der Datenbank.
Also nach meinem Verständnis ist es "nicht allzu aufwendig".
Nur habe ich keine Ahnung ob ich dafür ein Modul mit eigenem Content-Type ("Charakter") erstellen muss oder ob dieser Ansatz schon komplett daneben ist, bzw. ob das ggf. sogar mit dem cck zu bewerkstelligen wäre.
Der eine oder andere Tip, oder eine Warnung vor Hindernissen wäre echt toll.
Wie gesagt ich kenne das Ziel aber der Weg ist noch im Nebel.
XPectIT
- Anmelden oder Registrieren um Kommentare zu schreiben
Die Frage hat sich ziemlich
am 29.05.2008 - 09:32 Uhr
Die Frage hat sich ziemlich erledigt.
Mein Modul erstellt über hook_menu einen neuen Menüeintrag mit Unterpunkten. Mit hook_form erstelle ich die Formulare und die Ausgabe der Übersichtstabelle ist dann ja nicht mehr schwer.
Noch eine blöde Frage:
Kann ich sql-Fehler abfangen damit sie nicht unschön auf dem Seitenkopf angezeigt werden, oder muss ich die Formulareingaben zuvor aufwendig auf ALLE Möglichkeiten prüfen.
Beispiel:
Wenn ich ein "INSERT INTO"-query an die Datenbank sende und es eine Schlüsselverletzung gibt (z.B. weil ein Benutzer versucht einen Charakter zu erstellen, dessen Namen es schon gibt).
Gruß
XPectIT
Hat sich mittlerweile
am 13.06.2008 - 08:44 Uhr
Hat sich mittlerweile komplett erledigt, da ich - wie man es evtl. am besten lernt - einfach mal "drauflos" entwickelt habe.
Die Charaktere der Benutzer werden mittlerweile als Nodes gespeichert, die zusätzlichen Felder stehen in einem extra Table in der Datenbank (vgl. http://api.drupal.org/api/file/developer/examples/node_example.module/5 )
Der Charaktername ist $node->title, Beschreibung ist $node->body und viel mehr Felder der nodes benötige ich nicht.
Damit sind die Charakter_Nodes mit alles vorzügen von Drupal gesegnet. (Editieren, Kommentieren, Datei upload, Revisionen, etc)
Ich bin doch ziemlich erstaunt, dass es so einfach ging.
Danke auch an diesen Thread, der mir ganz gelegen kam: http://www.drupalcenter.de/node/10535
Gruß
XPectIT
P.S.: Eine Demo (nicht interaktiv) ist auf der Seite http://www.totekrieger.de/character verfügbar. Für Tips bin ich immer dankbar.