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

NodeReference rückwärts?

Eingetragen von kev52 (423)
am 14.09.2007 - 23:31 Uhr in
  • Views
  • Drupal 5.x

Ich arbeite zur Zeit viel mit dem CCK Nodereference Funktionen. Meine Frage. Erkennt ein Node, dass er von einem anderen referenziert wurde?

Ich würde gerne einen View erstellen, der alle Nodes zeigt, die NICHT von einem bestimmten Nodetyp referenziert wurden. Quasi jeder Node vom Typ A, der NICHT durch einen Node vom Typ B referenziert wurde. Geht so etwas?

‹ Filter in Views CCK Multiple Textfields ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich weiß nicht, ob es mit

Eingetragen von Alexander Langer (3416)
am 15.09.2007 - 13:33 Uhr

Ich weiß nicht, ob es mit Views geht, aber mit ner SQL-Abfrage gehts natürlich.

"I invented the term Object-Oriented, and I can tell you I did not have C++ in mind." -Alan Kay

  • Anmelden oder Registrieren um Kommentare zu schreiben

quasi dann direkt in die

Eingetragen von kev52 (423)
am 16.09.2007 - 12:59 Uhr

quasi dann direkt in die tpl.php oder?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Z.B., ja. "I invented the

Eingetragen von Alexander Langer (3416)
am 17.09.2007 - 07:49 Uhr

Z.B., ja.

"I invented the term Object-Oriented, and I can tell you I did not have C++ in mind." -Alan Kay

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du kannst ein View

Eingetragen von Devr@drupal.org (12)
am 17.09.2007 - 08:19 Uhr

Du kannst ein View erstellen, der einen Filter für die Ergebnisse beinhaltet (Node Typ ist KEINES von Typ A) und ein Argument hinzufügen (Nodereference: Field_XY), das mit dem Argument Handling Code "$args[0] = arg(1);" die entsprechende Liste von Nodes zurückliefert.

Beispiel: meine Redakteure stellen Artikel von Autoren ein, es gibt einen Nodetyp Artikel und einen Autor. (Die User sind in meinem Fall keine Autoren sondern Redakteure!) Im Nodetyp Artikel werden via CCK Nodereference Autoren-Nodes verlinkt. Ich habe mit oben beschriebenem View einen Block an den Nodetyp Autor gehängt, der beim Aufruf eines Autoren-Nodes alle Artikel liefert, die von dem entsprechenden Autor verfaßt wurden.

Ich habe nun eher das Problem anders herum: Ich brauche ein View, daß mir die Felder von Nodetyp Autor zurückliefert, wenn ich den Nodetyp Artikel aufrufe (also nicht nur ein Reference-Link). Vgl. http://www.drupalcenter.de/node/5330 - leider hat da bisher niemand eine Antwort :-(

Hoffe das war, was Du meintest,
Gruß Devr

  • Anmelden oder Registrieren um Kommentare zu schreiben

Über die NodeID des

Eingetragen von Alexander Langer (3416)
am 17.09.2007 - 09:19 Uhr

Über die NodeID des referenzierten Autors den Autor-Node laden und darstellen. Das ist nun wirklich eine eher triviale Übung. Oder habe ich etwas falsch verstanden?

"I invented the term Object-Oriented, and I can tell you I did not have C++ in mind." -Alan Kay

  • Anmelden oder Registrieren um Kommentare zu schreiben

Möglicherweise ist das

Eingetragen von Devr@drupal.org (12)
am 18.09.2007 - 12:07 Uhr

Möglicherweise ist das trivial, aber ich bin neuer Drupal User und finde mich in das System gerade erst ein:

Was funktioniert ist:
Filter: nach Typ der Childnode
Argument: Node ID
$args[0] = 3; // 3 ist die nid der in der Parentnode referenzierten Childnode

Was ich leider nicht hinbekomme:
die nid der Childnode dynamisch aus der Parentnode auslesen. Ich dachte das ginge mit:
$args[0] = $node->field_irgendsoeinereferenz[0]['nid'];

Grüße, Devr

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du kannst den View nicht

Eingetragen von Alexander Langer (3416)
am 18.09.2007 - 16:00 Uhr

Du kannst den View nicht allein übers Mausschubsen so detailliert gestalten. Du hast aber verschiedene Möglichkeiten ihn über eine eigene TPL-Datei, oder die template.php zu themen, oder aber auch erst im der node-xyz.tpl.php des vom View ausgelieferten Node Typs.

Darin kannste dann entsprechend auf die NID des referenzierten Nodes zugreifen und den Node laden:

$child = node_load($node->field_haumichblau[0]['nid']);

"I invented the term Object-Oriented, and I can tell you I did not have C++ in mind." -Alan Kay

  • Anmelden oder Registrieren um Kommentare zu schreiben

Die Funktion node_load() war

Eingetragen von Devr@drupal.org (12)
am 19.09.2007 - 09:03 Uhr

Die Funktion node_load() war mir bis dato unbekannt, hatte ich zwischenzeitlich aber schon gefunden.

$node = node_load(arg(1));
$args[0] = $node->field_referenz_zu_childnode[0]['nid'];

Funktioniert soweit auch via Views ohne Eingriff in die Templates, mit dem Nachteil, daß keine multiblen Referenzen angezeigt werden.

pebosi hat noch einen interessanten Ansatz via viewfield angeregt, den ich parallel verfolgen werde, siehe http://www.drupalcenter.de/node/5330

Gruß, Devr

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich bin da mehr ein Freund

Eingetragen von Alexander Langer (3416)
am 19.09.2007 - 09:35 Uhr

Ich bin da mehr ein Freund des Codes. Als Software-Entwickler fühle ich mich da wohler, als in einem Mischmasch aus Klickibunti mit Code. Daher auch meine Abneigung gegen Contemplate ;)

"I invented the term Object-Oriented, and I can tell you I did not have C++ in mind." -Alan Kay

  • Anmelden oder Registrieren um Kommentare zu schreiben

Von Klickibunti kann doch

Eingetragen von pebosi (2645)
am 19.09.2007 - 09:53 Uhr

Von Klickibunti kann doch bei Contemplate nicht die Rede sein, dort machst du doch nichts anderes als mit einer neuen node-typ.tpl.php Datei.

gruß pebosi

  • Anmelden oder Registrieren um Kommentare zu schreiben

also irgendwie passt es

Eingetragen von kev52 (423)
am 20.09.2007 - 22:31 Uhr

also irgendwie passt es einfach nicht! laufen soll es im grund so:

1. ein admin erstellt eine liste themen

2. nun kann man als user sagen, okay ich will ein thema nehmen. er geht auf "Thema erstellen" und dort bekommt er eine Liste der Themen. Wenn er nun eines wählt, soll es eben für andere nicht mehr möglich sein das zu tun. Sprich alle Themen die referenziert wurden sollen aus der Auswahlliste wegfallen.

wie in etwa muss ich da ran gehen?

  • Anmelden oder Registrieren um Kommentare zu schreiben

gibt es da keinen Ansatz

Eingetragen von kev52 (423)
am 22.09.2007 - 11:15 Uhr

gibt es da keinen Ansatz oder hab ich mich zu ungenau ausgedrückt?

  • Anmelden oder Registrieren um Kommentare zu schreiben

pebosi wrote:

Eingetragen von Alexander Langer (3416)
am 22.09.2007 - 12:57 Uhr
pebosi schrieb

Von Klickibunti kann doch bei Contemplate nicht die Rede sein, dort machst du doch nichts anderes als mit einer neuen node-typ.tpl.php Datei.

Das ist richtig, aber ich halte niht viel davon das Layout in einem Mischmasch aus DB-basiertem Code (via Contemplate) und Datei-basiertem Code wie TPL-Dateien zu beeinflussen. Wenn da niht sauber dokumentiert sucht man sich später mal nen Wolf und die beste Doku ist die, die nicht erstellt werden muss. "Convention over configuration", wie man u.a. bei Smalltalk und Ruby sagt.

@kev52:
Du hast doch über SQL alle Freiheiten, die du brauchst. Du lässt dir eine Liste der Themen liefern und gleichst die mit der Liste der vergebenen Themen ab. Man kann es über "SELECT ... WHERE ... NOT IN (...)" machen, oder vermutlich auch eleganter, aber mein SQL ist etwas eingerostet ;)

"I invented the term Object-Oriented, and I can tell you I did not have C++ in mind." -Alan Kay

  • Anmelden oder Registrieren um Kommentare zu schreiben

dann werd ich das so machen,

Eingetragen von kev52 (423)
am 22.09.2007 - 13:32 Uhr

dann werd ich das so machen, hatte nur gehofft, es gibt da eine Variante die über Views geklärt werden könnte. Danke an alle die sich Gedanken gemacht haben.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Recherche bei drupal.org

Eingetragen von rokr (593)
am 22.09.2007 - 20:26 Uhr

Hast du es schon mal so versucht? http://drupal.org/node/161867
Ich werde es auch bald brauchen, kann aber noch ein paar Stunden/Tage dauern. :-)

ciao, Ronald

  • 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 1 Tag
  • Hey danke
    vor 1 Woche 2 Tagen
  • Update: jetzt gibt's ein
    vor 1 Woche 3 Tagen
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 14 Stunden
  • Da scheint die Terminologie
    vor 2 Wochen 17 Stunden
  • Kannst doch auch alles direkt
    vor 2 Wochen 4 Tagen
  • In der entsprechenden View
    vor 2 Wochen 4 Tagen
  • Dazu müsstest Du vermutlich
    vor 2 Wochen 4 Tagen
  • gelöst
    vor 5 Wochen 1 Tag
  • Ja natürlich. Dass ist etwas,
    vor 5 Wochen 2 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20450

Neue User:

  • Mroppoofpaync
  • 4aficiona2
  • AppBuilder

» 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 15 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