[gelöst] View zurück auf View verweisen
am 15.09.2009 - 14:05 Uhr in
Liebe Drupaler,
ich kann zwar den Eindruck nicht loswerden, dass ich hier ein typisches Anfäger-auf-dem-Schlauch-steh-Problem habe - aber der Schlauch wird platter und platter.
Also:
Ich habe zwei Views. View Nr. 1 gibt eine Liste u.a. mit Node-Titeln aus. View Nr. 2 gibt aus Profilinformationen und Feldern eines neuen Inhaltstyps zusammengesetzte Einzelseiten aus. Die Node-Titel in View 1 habe ich jeweils mit einer ausgegebenen Einzelseite (View 2) verlinkt. Dit klappt auch.
Alles, was mir zu meinem Glück nun fehlt, ist ein Backlink, der von jeder Einzelseite (View 2) auf die Liste (View 1) verweist ("zurück zur Übersicht"). Mein Problem: Wie spreche ich View 1 an? Ich komm' nicht drauf ...
- Anmelden oder Registrieren um Kommentare zu schreiben
Wie hängen die Daten aus
am 15.09.2009 - 14:10 Uhr
Wie hängen die Daten aus View1 mit denen aus View2 zusammen?
Die Node-Titel in View 1 habe ich jeweils mit einer ausgegebenen Einzelseite (View 2) verlinkt.
Wie genau hast Du das gemacht?
Schöne Grüße,
Ralf Hendel
Schöne Grüße,
Ralf Hendel
|
Ich habe den Einzelseiten der View 2-Ausgabe
am 15.09.2009 - 14:22 Uhr
Ich habe den Einzelseiten der View 2-Ausgabe einen Pfad zugewiesen "content/%/stelle" und dann per Argument den Platzhalter durch die jeweilige Node-ID ersetzt. Auf die entsprechenden URLs wird dann aus View 1 verwiesen.
Meine Frage war nicht klar gestellt...
am 15.09.2009 - 15:08 Uhr
Hängen die Nodes, die Du in Views Nr. 1 selektierst mit den Nodes, die Du in Views Nr. 2 selektierst, zusammen?
Benutzt Du z.B. Node-Reference um einen Bezug herzustellen, oder wie machst Du das?
Ich meine auf Node bzw. CCK-Ebene.
Schöne Grüße,
Ralf Hendel
Schöne Grüße,
Ralf Hendel
|
In einem Fall habe ich die User-Referenz genutzt
am 15.09.2009 - 15:53 Uhr
In einem Fall habe ich die User-Referenz genutzt.
Vielleicht die Gesamtarchitektur des Projektes in Kurzform, dann wird's klarer:
Ich habe Benutzerprofile ("Anbieter") und Nodes, die über den Inhaltstyp "Angebot" erstellt werden. Letzterer besteht aus einem Titel und einem CCK-Benutzerreferenz-Feld auf den Benutzernamen.
Per View gebe ich jetzt zwei Dinge aus: a) Eine Liste aller Angebote (View Nr. 1) und b) die einzelnen Angebote, aber mit den Anbieterinformationen, sprich Infos aus den Profilfeldern (View 2). Dabei sind die gelisteten Angebote (View Nr. 1) mit den Einzelangeboten (View Nr. 2) wie oben beschrieben verknüpft.
(Das scheint ein bischen kompliziert zu sein. Man könnte es vermutlich auch einfacher lösen, falls man Profilinformationen in den Angebot-Nodes ausgeben kann. Aber irgendwo muss man ja mal anfangen mit dem allmählichen Begreifen ... ;-) )
Views Argumente + Beziehungen, evtl. auch Panels
am 17.09.2009 - 10:52 Uhr
Moin,
Dein Datenmodell klingt plausibel. Im Prinzip müsste es funktionieren, wenn Du entweder mit Views-Argumenten oder aber mit Beziehungen arbeitest.
Mit Argumenten kannst Du einen View z.B. nach allen Angebote eines Users filtern. In Zusammenspiel mit Panels kannst Du z.B. auf einer gemeinsamen Seite die Anbieterinformationen und auch alle Angebote des Anbieters darstellen.
Alternativ kannst Du mit "Beziehungen" auch weitere Tabellen zum View "dazu-joinen". Damit kannst Du in der Liste der Angebote auch Informationen aus dem Userprofil selektieren. Möglicherweise musste Du zuerst den User-View bauen musst und anschließend die Beziehung zu den Angebot-Nodes herstellen. Ich nicht ganz sicher, meine mich aber zu erinnern, dass Du aus Views vom Typ "Node" keine Beziehung zu Userprofildaten einrichten kannst.
Hoffe, das hilft Dir weiter...
Schöne Grüße,
Ralf Hendel
Schöne Grüße,
Ralf Hendel
|
Ganz platte Idee: kannst du
am 17.09.2009 - 11:07 Uhr
Ganz platte Idee: kannst du nicht im View2 die referrer URL (oder eine andere PHP-interne Variable) auswerten und darauf zurückverweisen. Also einen Link einbauen, der genau diesen referrer nutzt? Setzt natürlich voraus, dass View1 samt notwendiger Argumente per URL ansprechbar ist.
Idee 2: mache aus dem view2 ein kleines popup Fenster. Das ist nicht unüblich und auf diese Weise umgehst du das Problem mit dem Backlink. Ausserdem können so ggf mehrere Einzeldaten dargestellt werden (zum vergleichen oder was auch immer)
Idee Nr. 1 war der richtige Weg
am 17.09.2009 - 12:44 Uhr
Idee Nr. 1 war der richtige Weg. Den hatte ich auch schon eingeschlagen - liegt ja nah -, dabei aber einen doofen Fehler eingebaut: Ich habe nämlich den Rückverweis nicht mit dem dafür vorgesehenen Feld "Global:Custom", sondern versehentlich mit dem Feld "Node:Link" bewerkstelligt. Und das wird dann natürlich kein Rückverweis - ganz gleich, was ich als URL angebe; es wird ignoriert -, sondern eine Selbstreferenz auf den aktuellen Beitrag.
Also: gelöst! Danke!
(Idee 2 hatte ich auch schon erwogen, aber die Einzelangebote sind mir für Popups ein bisschen zu überladen.)
Die Panels-Sache klingt sehr spannend
am 17.09.2009 - 12:52 Uhr
In Zusammenspiel mit Panels kannst Du z.B. auf einer gemeinsamen Seite die Anbieterinformationen und auch alle Angebote des Anbieters darstellen.
Alternativ kannst Du mit "Beziehungen" auch weitere Tabellen zum View "dazu-joinen".
Die Panels-Sache klingt sehr spannend. Hast du einen Tipp, wo ich mich sowohl in die Panels als auch tiefer in die Funktionalität von Views (Argumente, Beziehungen) einlesen kann? Oder ist es sinnvoller das durch learning by doing zu begreifen und einfach rumzuprobieren? Ich bin noch totaler Frischling ... ;-)
quäl Dich durch - es lohnt sich
am 17.09.2009 - 13:19 Uhr
...so habe ich es zumindest gemacht.
Panels ist ein wirklich ausgesprochen mächtiges Tool um z.B. Übersichtsseiten / landing pages o.ä. zu bauen. Leider nicht so toll dokumentiert...
Ich würde Dir emfehlen, viel auszuprobieren. Stell Deine Fragen zu Panels hier im Forum - die Antworten werden sicherlich viele andere ebenfalls interessieren.
Bei bestimmten Effekten wirst Du bestimmt den einen oder anderen verträumten Blick in die Issue Queque einzelner Module werfen wollen, ob es sich um Fehler oder Features handelt ;-)
Das wird vermutlich ein steiniger Weg werden, der sich m.E. aber lohnt!
Schöne Grüße,
Ralf Hendel
Schöne Grüße,
Ralf Hendel
|
Layout-Änderungen sind im Backend konfigurierbar.
am 17.09.2009 - 15:44 Uhr
Es lohnt sich. Das kann ich nur bestätigen. Es öffnen sich andere Vorgehensweisen beim Umsetzen eines Layouts - mit dem Ergebnis: Layout-Änderungen sind im Backend konfigurierbar.
------------------------
Quiptime Group
Da geht noch was.
Kann ich bestätigen. Habe
am 17.09.2009 - 16:53 Uhr
Kann ich bestätigen. Habe mich zwar nicht wirklich tief in Panels eingearbeitet, aber was ich bisher umgesetzt habe war traumhaft einfach und wäre mit anderen Mitteln nicht gegangen. Als Fernziel sehe ich eine AJAX-basierte Interaktion zwischen den Panelbereichen (klicke oben und die unteren werden neu geladen, klicke links und rechts wird neu geladen und oben wird ein Menü geändert ...). Das ist wahrscheinlich das, was oben angerissen wurde, aber da steckt doch verdammt viel know-how und Konfigurationsarbeit hinter.