(Erledigt) Userliste auf Seite (Inhaltstyp) via Node Relations?
am 12.05.2010 - 08:17 Uhr in
Hallo zusammen,
ich schlage mich nun seit längerem zumindest geistig mit einem Problem herum dessen Lösung sich mir bisher nicht erschließen will. Es geht um Folgendes:
Es gibt auf der entsprechenden Seite einen Inhaltstypen, nennen wir ihn hier mal Firma. Über diesen Inhaltstypen können Personen entsprechende Einträge vornehmen.
Daneben gibt es Nutzerprofile, hier erstellt über Bio(graphy) und CCK. User können dort ebenso diverse Daten hinterlegen.
Nun will ich erreichen das auf der Firmenseite all jene "Mitglieder" angezeigt werden die eben zu dieser Firma gehören, und vor allem will ich dabei Daten aus dem Profil (CCK) mit auflisten.
Nun hatte ich gedacht gehe ich erstmal her und erstelle im Profil eine Feld mit Node Relation auf den Titel des Inhaltstypes Firma. Damit könnte der User in seinem Profil die Firma auswählen und es bestünde schon mal eine Verbindung.
Jetzt könnte man natürlich hergehen und auf den Firmenseiten einen Views platzieren der eben alle User filtert die den entsprechenden Firmennamen ausgewählt haben. Das Problem fängt aber da an wo es im Grunde eine Abfrage bräuchte die besagt "Node Title ist gleich Auswahl im Profil", oder so ähnlich. Das kann man im Grunde per Hand immer individuell einstellen, aber es geht eben nicht dynamisch, zumindest habe ich bisher keine Lösung gefunden.
Wenn ich es erreichen könnte das die Auswahl im Profil abgeglichen wird mit dem Titel der Node, so das beides gleich ist, und das für alle neuen und alten Nodes dieses Typen dynamisch, dann ist die Abfrage der Profildaten natürlich nur noch Einstellungssache.
Hier noch mal in Abfolge der Ereignisse:
- Schritt1 - Node „Inhaltstyp Firma ABC“ wird erstellt
- Schritt2 - Node Relations - Liste Titel Inhaltstyp Firma im Profil
- Schritt 3 - User wählt im Profil Firma ABC in der Liste aus
- Schritt 4 - User taucht auf Seite der Firma ABC mit Profildaten auf (Views-Liste?)
Hier hänge ich eben und weiß nicht so recht weiter. "Leider" läuft die Seite zudem auf Drupal 5, weswegen die Lösung damit funktionieren müsste.
Ich befürchte zwar das es keine Lösung gibt, aber ich dachte mir ich frage trotzdem mal. :)
Euch vielen Dank für die Hilfe und beste Grüße,
Genesis
- Anmelden oder Registrieren um Kommentare zu schreiben
Moin Genesis, im Grunde schon
am 12.05.2010 - 08:26 Uhr
Moin Genesis,
im Grunde schon der Richtige Ansatz: User im Profil ein Node-Rewferenc mit dem Zeiger auf "Firma" zur Verfügung stellen. Dann eine View erstellen, mit dem Argument "Node-Referenz-Feld-Firma" = "Beitrags-ID aus der URL". Schon hast Du eine Liste aller User der entsprechenden Firma. Einbinden kannst Du diese dann per Block oder indem Du sie direkt einbettest (z. B. in der node.tpl.php).
Beste Grüße,
Niko
Kommune3 - Drupal Entwickler aus dem Ruhrgebiets
Vielen Dank Niko, ich werde
am 12.05.2010 - 09:15 Uhr
Vielen Dank Niko,
ich werde das heute mal im Laufe des Tages testen. Wenn es so einfach wäre wäre das natürlich sehr schön. War schon am Überlegen das Ganze über Signup laufen zu lassen, was aber keine allzu schöne Lösung ist. :)
Also, vielen lieben Dank und ich gebe später mal Feedback.
Beste Grüße vom,
Lars
Okay, ich denke ich brauche
am 12.05.2010 - 10:56 Uhr
Okay,
ich denke ich brauche da doch noch mal Hilfe. Ich denke du (Niko) hast übersehen das ich Drupal5 und damit auch eine ältere Version von Viess verwende, oder ich habe etwas missverstanden.
Probleme habe ich bei diesem Part, da ich nicht weiß ob das so mit meiner Views-Version realisierbar ist:
"Node-Referenz-Feld-Firma" = "Beitrags-ID aus der URL"
Hier mal ein Bild dessen wie es bei mir ausschaut: Link
Ist es eventuell über direkten Code machbar wie hier dargestellt? Ich habe da einen Snippet gefunden der die Node-ID abfragt, aber ich denke so einfach ist es bestimmt nicht. Mir fehlen leider auch die PHP-Kenntnisse.
Oder habe ich gar etwas falsch gemacht, bzw. kann ich es auf anderem Wege lösen?
Ich habe so zwar eine Ausgabe, aber es wird eben unkontrolliert alles ausgegeben...
Danke erneut,
Lars
Hey Lars, stimmt, ich war
am 12.05.2010 - 12:00 Uhr
Hey Lars,
stimmt, ich war gedanklich tatsächlich bei Drupal 6... Aber mit 5 ist das genauso möglich. Du kannst Dir mit PHP dann auch das Argument aus der URL zurückgeben lassen. Das Wäre dann in Deinem Fall
arg(1)
. Bzw.<?php return arg(1) ?>
, bin mir nämlich grad nicht sicher, wie Views in Drupal 5 das haben will.Beste Grüße,
Niko
Kommune3 - Drupal Entwickler aus dem Ruhrgebiets
Ich war gerade im Grunde
am 12.05.2010 - 13:18 Uhr
Ich war gerade im Grunde schon dabei aufzugeben, habe es aber mehr oder minder durch Zufall doch hinbekommen, vor allem ist aufgeben immer so... ultimativ. :)
So hat es dann letztendlich funktioniert: Link
Hatte einige Snippets getestet und viele Kombination, auch den View direkt mit Argument auszugeben.
Was solls, so geht es tatsächlich. :)
Vielen, vielen Dank noch mal für deine Hilfe und deine Mühen!
Beste Grüße vom,
Lars