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

View der mir eine LIKE Abfrage in WHERE-Klausel erstellt

Eingetragen von longvalley (33)
am 22.07.2008 - 16:04 Uhr in
  • Views
  • Drupal 6.x

Hallo Drupaler,

ich habe folgendes Problem:

Um eine n-n-Beziehung zwischen Nodes auszudrücken (Personen können Publikationen schreiben und eine Publikation kann von mehreren Personen geschrieben worden sein habe ich in der Node vom Typ Publikation ein Feld eingerichtet, in dem ich komma-separiert einen Referenzwert (Nachname der Personen) speichere. Diese Personen arbeiten nicht mit dem CMS. Es geht ledidiglich darum die Informationen im CMS abzubilden.

Nun benötige ich einen View, der mir über diesen Referenzwert zu einem gegebenen Nachnamen (Bspw. 'Mustermann') die zugehörigen Publikationen ausliest und anzeigt:

Das Problem ist nun Folgendes: Ich übergebe den Nachname 'Mustermann' als Argument an den View. Dieser vergleicht das Referenzfeld mit dem Argument und liefert mir die Publikationen wo Referenzfeldwert = Argumentwert.

Und genau dort ist der Hund begraben: Ich speichere ja im Referenzfeld im Ausnahmefall mehrere Nachnamen Komma-separiert. Wie kriege ich es also hin das SQL des Views so abzuändern, dass er die WHERE-Bedinunng nicht mit

... WHERE Argumentwert (Bspw. 'Mustermann') = Referenzfeld (Bspw. 'Mustermann,Müller,Schmidt)

sondern mit

... WHERE Argumentwert (Bspw. Mustermann) LIKE '%Referenzfeld%' (Bspw. '%Mustermann,Müller,Schmidt%');

baut?

Problem besteht darin, dass das Views-Modul eine Abfrage immer als '= Bedingung' in die WHERE-Klausel setzt. Was ich bräuchte wäre eine LIKE-Klausel...

In diesem Fall würde mir auch dieser Satz angezeigt.

Irgendwer eine Idee? Alternativ bin ich auch über andere Möglichkeiten der Verknüpfung der beiden Node-Typen interessiert. Eine Speicherung einer Node-Referenz funktioniert nicht, da dies an dem Kriterium der Mehrsprachigkeit scheitert (Daten zu Publikationen sind einsprachig und Daten zu Personen müssen mehrsprachig abgelegt werden. Somit ergeben sich unterschiedliche Node-Ids für Personen bei unterschiedlichen Sprachen. Der Publikatin kann ich aber immer nur die Personen der gerade eingestellten Sprache zuweisen. Ausserdem finde ich diese mehrfache Speicherung ein und derselben Personen zu einer Publikation (unter anderer NodeId) immer etwas widersprüchlich... na ja, längeres Thema...). Also NodeId geht aus meiner Sicht nicht...

Vielleicht hat ja trotzdem jemand eine Idee?

Gruß
Marcel

‹ Erledigt ... Danke! Bestimmte Titel plus Zusatzinfos aus View lesen. ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Na klar geht das ganze gut,

Eingetragen von dawehner (2639)
am 28.07.2008 - 01:40 Uhr

Na klar geht das ganze gut, blos mit was einem Aufwand ^^

Es gibt den Hook hook_views_query_alter(&$view, &$query)
Damit kann man die Query direkt verändern, damit könntest du ein Like einbauen

Weiterhin viel Spaß mit der Funktion
Gute Nacht
--------------
Blog www.freeblogger.org: Deutscher IRC-Channel: irc.freenode.net #drupal.de ... Jabber-me: dwehner@im.calug.deXING

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

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 30 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