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

Views: Anzeige des Inhalts eines Node- Content-Types, dem mindestens zwei Felder mit einer beliebigen Anzahl von Werten zugeordn

Eingetragen von PWinkels (2)
am 20.12.2013 - 17:47 Uhr in
  • Views
  • Drupal 7.x

Ich möchte mit Views den Inhalt bestimmter Nodes anzeigen lassen, dessen Node-Content-Type-Definition mindestens zwei Felder enthält, für die beliebig viele Werte eingegeben werden können. Für jedes dieser Felder erstellt Drupal eine eigene Tabelle. Bei Eingabe von mehr als einem Wert können die Werte durch einen automatisch generierten Delta-Wert unterschieden werden. Diese Struktur bringt Probleme mit sich, wenn mit Views der Content dieser Node zusammen mit dem Content der zugeordneten Felder angezeigt werden soll. In der Ausgabe-Tabelle ist dann jeder Wert der einen Tabelle mit jedem Wert der anderen Tabelle verbunden. Es sollen aber nur die Werte mit demselben Delta-Wert angezeigt werden. Im SQL-Statement ist erkennbar, dass Views die beiden Tabellen jeweils mit einem ‚leftjoin‘ mit der Node-Tabelle verknüpft. Eine Verbindung zwischen den beiden Fiels-Tabellen fehlt allerdings! Hier der entscheidende Teil des SQL-Statements:
SELECT DISTINCT ...
FROM node
LEFT JOIN
field_data_field_recurringevent_date ON node.nid = field_data_field_recurringevent_date.entity_id
AND (field_data_field_recurringevent_date.entity_type = 'node'
AND field_data_field_recurringevent_date.deleted = '0')
LEFT JOIN
field_data_field_recurringevent_data_divers ON node.nid = field_data_field_recurringevent_data_divers.entity_id
AND (field_data_field_recurringevent_data_divers.entity_type = 'node'
AND field_data_field_recurringevent_data_divers.deleted = '0')
WHERE ...

Wenn ich dieses Statement um folgende Zeile ergänzen könnte, wäre mein Problem gelöst:
field_data_field_recurringevent_date.delta= field_data_field_recurringevent_data_divers.delta

Ich habe zwei Lösungsansätze ausprobiert:
> Mit Hilfe von php einen Filter hinzufügen. Das hat allerdings ab einer bestimmten Menge von Werten ein Memory-Overflow-Problem zu Folge.

> Dann habe ich versucht, das SQL-Statement direkt mit Hilfe des hook_views_query_alter zu verändern, aber es war mir bisher nicht möglich den Code in der richtigen Syntax zu verändern. Ich habe aber nur Code wie diesen erhalten:
field_data_field_recurringevent_date.delta= 'field_data_field_recurringevent_data_divers.delta'. Aufgrund der Ausrufungszeichen funktioniert das Statement nicht richtig. Ich erwarte aber eigentlich, dass es möglich sein muss, das Problem auf diese Weise zu lösen, speziell durch die Verwendung von 'addjoin‘. Ich habe aber bisher keine ausreichende Dokumentation für die Verwendung von 'addjoin‘ gefunden.

Hier der Link zu einem Bild, das die ‘join’-Situation zeigt. Bisher war es mir eben nicht möglich ein Statement zu kreieren, das auch die Verbindung in der roten Ellipse korrekt berücksichtigt. Ich brauche eben eine Lösung für dieses Problem.

Ich bin dankbar für jede Form von Anregungen und Lösungen.

Viele Grüße * Peter Winkels

‹ Neue Beiträge seit letztem Login Spezifisches Thumbnail für Gallery mit Views ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
Weiter

Neue Kommentare

  • Verwende doch das Tag dafür,
    vor 4 Tagen 3 Stunden
  • Guckst du hier: step by step
    vor 3 Tagen 17 Stunden
  • Guckst du hier: step by step
    vor 3 Tagen 17 Stunden
  • Ich habe ja keine Angst vor
    vor 1 Woche 6 Tagen
  • Ist grundsätzlichmachbar – aber nichts für „einfach mal schnell“
    vor 2 Wochen 1 Tag
  • Vielen Dank erst einmal, aber
    vor 2 Wochen 3 Tagen
  • Du hast die "Trusted host
    vor 2 Wochen 3 Tagen
  • Bitte genauer den aktuellen Lösungs-Ansatz beschreiben
    vor 4 Wochen 2 Tagen
  • Git und rsync sind die wichtigsten Werkzeuge
    vor 4 Wochen 5 Tagen
  • Arrrrg. Nix Tabelle :-D /*
    vor 9 Wochen 1 Tag

Statistik

Beiträge im Forum: 250284
Registrierte User: 20498

Neue User:

  • Inga GuAph
  • Robertolix
  • DavidBit

» Alle User anzeigen

User nach Punkten sortiert:
wla9464
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 18 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