Wie könnte man das realisieren?
am 28.06.2009 - 10:33 Uhr in
Hi!
Ich bin Drupal-Neuentwickler. Ich möchte für meine Webseite einen neuen Beitragstyp schreiben - Übungen.
Eine Übung besteht aus Titel, Beschreibung, Instruktionen, Intensitäten, Mittel usw.
Also das mit Titel, Beschreibung und Mittel bekomm ich so hin. Dabei handelt es sich ja nur um die Erweiterungen des Standard-Nodetyps.
Was ich mir aber nicht vorstellen kann wie ich folgendes in Drupal realisieren kann (in Joomla hab ich es schon):
Die Instruktionen sollen durch einen Add-Button dynamisch (und so gesehen endlos) hinzugefügt werden.
Also würde ich eine neue Tabelle in der Datenbank anlegen, die aus dem Bild und dem Beschreibungstext bestehen sowie der nid.
Allerdings ist mir unklar wie ich das Formular in exercises.module programmiere. Muss ich dafür einen Hook nehmen? Sollte ich ein Extra-Modul schreiben?
Wäre super, wenn mir da jmd nen Denkanstoss geben könnte.
Besten Dank und schönen Sonntag noch
Aljoscha
- Anmelden oder Registrieren um Kommentare zu schreiben

cck
am 28.06.2009 - 12:42 Uhr
Moin.
Das klingt für mich nach folgendem Szenario:
* Du hast mehrere Instruktionen (jeweils eine Node).
* Der Inhaltstyp "Übungen" hat ein CCK-Feld des Typs "nodereference" (multiple).
* Beim Erstellen einer Übung kannst Du dann dort beliebig viele bestehende Instruktionen auswählen.
Klingt das in etwa so, wie Du das haben möchtest?
hth,
Stefan
--
sei nett zu Deinem Themer
Hey Stefan! Danke für die
am 28.06.2009 - 14:08 Uhr
Hey Stefan!
Danke für die schnelle Antwort.
Also ich hab Drupal.org mal nach nodereference gesucht, bin aber nicht so wirklich fündig geworden *Kopf kratz*. Das was ich gefunden habe, war entweder noch in dev oder nicht so sehr das, was ich suche.
Also die Übungen sollen ihre Instruktionen nur für sich haben und sind nicht wiederverwendbar.
Außerdem würde ich immer gerne wissen, was wo wie passiert. Deshalb bin ich nicht so der CCK-Fan und eher der ich programmiere ich von Grund auf. Das hat dann auch den Vorteil, dass ich dazu noch ein passendes Programm (in Java o.ä.) schreiben kann, dass dann schön die Übungen auch auslesen kann, unabhängig von der Webseite.
Ich habe mir folgenden Ansatz überlegt:
Drei Tabellen: exercises, exercises_instructions und exercises_intensities.
In der exercises-Tabelle werden alle Grunddaten der Übungen gespeichert. Nachdem dann eine Übung angelegt ist, wird für den User, der die Übung erstellt hat, ein Add-Button unter der Überschrift Instruktionen angezeigt, von dem er zu einem Formular kommt, mit dem er eine Instruktion eingeben kann (bestehend aus einem Bild und dem Instruktionstext). Die Instruktion wird dann in der exercises_instructions gespeichert, das auch ein Feld "nid" hat. Nach dem Speichern soll der User dann zurück zur Übung kommen.
Die Frage, die sich mir nun stellt, ist, sind Instruktionen dann ein extra Modul oder innerhalb des Moduls exercises?
Die Instruktionen sollen und müssen nicht searchable sein.
Ist das für Drupal der richtige Ansatz?
Besten Dank nochmal
Aljoscha
CCK
am 28.06.2009 - 14:17 Uhr
Also ich hab Drupal.org mal nach nodereference gesucht, bin aber nicht so wirklich fündig geworden *Kopf kratz*. Das was ich gefunden habe, war entweder noch in dev oder nicht so sehr das, was ich suche.
Installiere Dir CCK. Nodereference ist dort enthalten.
Also die Übungen sollen ihre Instruktionen nur für sich haben und sind nicht wiederverwendbar
Macht ja nichts.
Außerdem würde ich immer gerne wissen, was wo wie passiert. Deshalb bin ich nicht so der CCK-Fan und eher der ich programmiere ich von Grund auf.
Öhm, das finde ich jetzt eher seltsam. Du lehnst bereits etablierte, getestete und sichere Implementierungen ab, nur weil Du lieber selbst programmierst?
Das hat dann auch den Vorteil, dass ich dazu noch ein passendes Programm (in Java o.ä.) schreiben kann, dass dann schön die Übungen auch auslesen kann, unabhängig von der Webseite.
Das kannst Du doch trotzdem. Schau Dir einfach die Struktur der Tabellen an und lies die gewünschten Daten dann aus.
Das ist kein grosser Aufwand.
Ich habe mir folgenden Ansatz überlegt: ... [snip] ...
Ist das für Drupal der richtige Ansatz?
Nein.
Verwende bereits bestehende Module. Diese enthalten (kaum bis) keine Sicherheitslücken, die Du Dir evtl. (unabhängig von Deiner Erfahrung als Programmierer) einbaust und haben sich bereits tausendfach bewährt.
hth,
Stefan
--
sei nett zu Deinem Themer
Hey Stefan! Wenn das der
am 28.06.2009 - 16:20 Uhr
Hey Stefan!
Wenn das der Drupal-Way ist, dann werde ich ihn beschreiten.
Ich habe CCK installiert, aktiviert und auch schon die beiden Inhaltstypen erstellt.
Habe auch einen View erstellt, so wie es nodereference haben will.
Ich scheitere ich jetzt aber an ein paar Dingen:
Ich sehe ja nun alle Instuktionen. Das soll ja nicht sein. Sondern, ich möchte, dass der Nutzer auf einen Add-Button klickt (o.ä.) und dann eine neue Instruktion nur und ausschließlich für diese Übung schreiben kann.
Und ich kann nur eine Instruktion bisher auswählen (Radiobutton, Auswahlliste). Ich habe keine Möglichkeit multiple irgendwo auszuwählen.
Ich schätze, ich stelle mich jetzt einfach zu doof an. Aber vlt kannst Du mir dabei nochmals helfen. Dann hab ich einen Ansatz und schaffe den Rest sicherlich ganz alleine 0:)
Besten Dank nochmals
Aljoscha
NeoAnderson1982 schrieb Und
am 28.06.2009 - 16:35 Uhr
Und ich kann nur eine Instruktion bisher auswählen (Radiobutton, Auswahlliste). Ich habe keine Möglichkeit multiple irgendwo auszuwählen.
Da gibts doch auch noch CheckBoxes!? Auswahllisten sind meines wissens sogar multiselektionsfähig (was für ein Wort).
Gruss Roger
Hmmm, also...
am 28.06.2009 - 17:54 Uhr
...wenn ich etwas abstrakt denke, dann könnte man vielleicht Dein Anliegen auch mit der normalen Node/Comment-Konstruktion hinkriegen:
Den Node-Typ für die Übung hast Du ja schon, und die Instruktionen hängen dann als "Kommentare" dran.
Hilft das irgendwie weiter?
lg leda
Guten Abend und danke, dass
am 28.06.2009 - 19:16 Uhr
Guten Abend und danke, dass so viele helfen wollen! Echt super.
Also ich hab Stefans Vorschlag verfolgt und das sieht auch schon ganz gut aus. Hatte meinen Fehler gefunden, weshalb Radiobuttons statt Checkboxes kamen.
Jetzt hab ich nur noch eine Frage:
Wenn ich mir die Übung jetzt anschaue, dann zeigt er mir nur einen Link auf die Instruktion an (Hier Übung 01 genannt - Link).
Dort sollte aber schon die komplette Instruktion: Bild + Text erscheinen und nicht nur der Link dazu.
Weiß jemand, wie ich das noch einstellen kann, dass er nicht Links sondern den Node anzeigt?
Besten Dank nochmals und nen schönen Restsonntag
Aljoscha
Views_attach
am 28.06.2009 - 19:22 Uhr
Views_attach wäre iene Möglichkeit. Und dann noch etwas jQuery und du hast eine komplete Liste der Instruktionen, die einzeln calapst werden können. Frag mich aber jetzt nicht wie dasm mit jQuery funktioniert, da muss ein anderer dran. In vielleicht 9 Monaten kann ich dir da mehr dazu sagen. Mehr zeit habe ich momentan nicht mich da einzufuchsen.
Gruss Roger
Hi, habe das Problem gelöst
am 02.07.2009 - 18:06 Uhr
Hi, habe das Problem gelöst mit dieser Anleitung:
http://www.lullabot.com/articles/photo-galleries-views-attach
Besten Dank nochmals für die Hilfe!
Super recherchiert
am 03.07.2009 - 07:01 Uhr
Hi, habe das Problem gelöst mit dieser Anleitung:
http://www.lullabot.com/articles/photo-galleries-views-attach
Besten Dank nochmals für die Hilfe!
Diese Anleitung habe ich noch nicht entdeckt, das ist wirklich QL was sich damit machen lässt. Besten Dank Neo.
Gruss Roger