Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Allgemeines zu Drupal ›

Komplexer Views-Filter für Fieldcollection-Elemente

Eingetragen von t2k (258)
am 29.08.2013 - 14:44 Uhr in
  • Allgemeines zu Drupal
  • Drupal 7.x

Hallo Zusammen!

Ich hab ein Problem mit einem etwas komplexeren Node, Fieldcollections und dem Views-Filter.
Ich versuche es mal grob an einem Beispiel zu skizzieren (wenns nicht verständlich ist, bitte sagts mir ;-)

Prinzip:

  • Ich habe ein System in dem mehrere Wohnungen verzeichnet sind. Jede Wohnung ist ein Node.
  • In den Wohnungen befindet sich in jedem Raum ein Schrank. Jeder Schrank ist ein Fieldcollection-Element im jeweiligen Node.
  • Dieser Schrank enthält Kleidungsstücke für Frauen oder Männer oder er ist leer.

Der Inhaltstyp sieht ungefähr so aus:

  • Name der Wohnung (Textfeld)
  • Anschrift der Wohnung (Textfeld)
  • Fieldcollection: Raum (Select mit Wohnzimmer / Schlafzimmer / Küche) | Frauen-Kleidungsstücke (Checkbox) | Männer-Kleidungsstücke (Checkbox)

Ich möchte nun mittels Views und einem exposed-Filter die Wohnungen (Nodes) in folgender Reihenfolge (kombinert) herausfiltern nach folgenden Kriterien:

  • Checkbox: Schrank ist gefüllt (z.B. gib mir nur die Nodes aus, in dem sich gefüllte Schränke befinden)
  • Select: Wohnzimmer / Schlafzimmer / Küche (z.B. gib mir nur die Nodes aus, in dem sich gefüllte Schränke in Wohnzimmern befinden)
  • Select: Frauen / Männer (z.B. Gib mir nur die Nodes aus, in dem sich gefüllte Schränke im Wohnzimmern befinden, die Frauen-Kleidungsstücke enthalten)

Das Problem das ich nun habe:
Wähle ich nun wie oben im exposed-Filter aus "Gib mir nur die Nodes aus, in dem sich gefüllte Schränke im Wohnzimmern befinden, die Frauen-Kleidungsstücke enthalten",
werden mir momentan falsche Ergebnisse ausgeworfen.
Denn der Filter schmeißt mir alle Nodes aus die:

  1. Schränke im Wohnzimmer haben (unabhängig ob gefüllt oder leer)
  2. Schränke mit Frauen-Kleidungsstücken haben (unabhängig in welchem Raum)
  3. Schränke haben die gefüllt sind (unabhängig ob mir Frauen oder Herren-Kleidern)

Ich müsste nun eigentlich einen Filter haben, der die einzelnen Fieldcollection-Elemente durchsucht und wenn die Suchkriterien zutreffen, das Node in der Ergebnisliste anzeigt.
Geht das irgendwie?

Oder würdet ihr das ganze anders aufbauen?
Wenn ja, wie könnte das aussehen?
Gibts für sowas ein Modul?

Vielen Dank vorab und Grüße!

‹ Wie Drupal 7 Distribution Core update durchführen? [gelöst]Main Page Content auf neuer Node anzeigen lassen ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Vielleicht noch mal anders.

Eingetragen von t2k (258)
am 03.09.2013 - 12:33 Uhr

Leider habe ich noch keine Lösung für das oben beschriebene Problem.
Ich versuche das nochmal an einem konkreten Beispiel zu verdeutlichen.

Eingabe:

  • Ich will eine Seite bauen, auf der sich Sportvereine eintragen können
  • Jeder Sportverein soll einen Node haben (nach Möglichkeit)
  • Jeder Sportverein soll seine Sportangebote eintragen (z.B. "Basketball", "Volleyball", "Badminton" aus Taxonomie-Vokabular)
  • Zusätzlich zu den Sportangeboten soll eingetragen werden ob das jeweilige Sportangebot für die Zielgruppe "Männer", "Frauen", "Kinder" ist (aus einem zweiten Taxonomie-Vokabular)
  • Um das Ganze einfach zu halten, hatte ich gedacht, dass man das mittels Field-Collections löst, in dessen Items man dann jeweils ein Sportangebot und eine Zielgruppe auswählen kann

Ausgabe:

  • Diese Nodes sollen in einem View mit Exposed-Filters dargestellt werden
  • Hier soll der User in einem ersten Select-Pullwdown ein Sportangebot wählen können
  • Und in einem zweiten Select-Pullwdown wählen für welche Zielgruppe er ein Angebot sucht

Problem:
Wie kann ich eine so verknüpfte Suche erstellen?
Also eine Suche, die wenn ich "Volleyball" und "Männer" Suche, nicht alle Volleyball-Angebote UND alle Männer-Angebote auswirft, sondern NUR die Volleyball-Angebote die auch wirklich für Männer sind.

Das treibt mich grad etwas zur Verzweifelung und ich hoffe dass das mit Drupal überhaupt zu lösen ist.

Ich bin über jeden Tipp dankbar!
Herzliche Grüße!
t2k

  • Anmelden oder Registrieren um Kommentare zu schreiben

Das ist jetzt reines

Eingetragen von quiptime (4972)
am 03.09.2013 - 13:08 Uhr

Das ist jetzt reines Brainstorming.

Ob man damit in Detail zu einer praktikablen Loesung Deiner Aufgabe kommt muesste man testen. Eventuell ist die Idee ja auch abwegig.

Mit dem Modul Search API kann man beliebig viele Suchindexe verwenden - bspw. "Volleyball" und "Männer" und "Volleyball" und "Frauen" usw..
Einen Suchindex kann man sehr granular konfigurieren hinsichtlich dessen was indiziert wird und demzufolge suchbar ist.

Mit dem Modul Search pages kann man verschiedene Suchseiten mit eigener URL und dazugehoerigem Suchindex erstellen.

Search API arbeitet auch mit Views.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Das Problem bei all den

Eingetragen von t2k (258)
am 03.09.2013 - 13:29 Uhr

Das Problem bei all den Suchmethoden ist soweit ist das sehe, dass die Sportangebote "zeilenweise" durchsucht werden müssen.

Beispiel:

Field-Collection Sportangebote:
------------------------------------------------------------------------
Angebot: Volleyball | Zielgruppe: Männer, Frauen
------------------------------------------------------------------------
Angebot: Fußball | Zielgruppe: Frauen
------------------------------------------------------------------------
Angebot: Basketball | Zielgruppe: Kinder
------------------------------------------------------------------------

Durchsuche ich jetzt den ganzen Node nach "Volleyball" und "Kinder" findet er natürlich was und wirft mir den Node als Ergebnis aus ... aber das ist ja nicht richtig.

Was meinst du dazu?
Oder ist das so nicht realisierbar?
Wie könnte man es sonst machen?

Vielen Dank für deine Antwort und herzliche Grüße!!!
t2k

  • Anmelden oder Registrieren um Kommentare zu schreiben

Kommt darauf an wie fit Du in

Eingetragen von quiptime (4972)
am 03.09.2013 - 13:30 Uhr

Kommt darauf an wie fit Du in SQL bist.

Aktiviere in den Views Einstellungen die Anzeige der Datenbankabfragen.
Mitunter kann einem das helfen die Filterkriterien zu optimieren.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke für deine Antwort! Die

Eingetragen von t2k (258)
am 17.12.2013 - 20:19 Uhr

Danke für deine Antwort!
Die Sache lag jetzt einige Monate brach. Nun will ich mich aber damit noch einmal befassen.

Die Datenbankabfragen werden mir bereits angezeigt.
Ich könnte auch theoretisch eine SQL-Query selbst erstellen.
Aber wie und wo mache ich das? Oder brauch ich dafür ein zusätzliches Modul?

Danke und Grüße!
t2k

  • Anmelden oder Registrieren um Kommentare zu schreiben

du kanst field collections

Eingetragen von caw (2762)
am 18.12.2013 - 05:37 Uhr

du kanst field collections felder doch auch als exposed filter machen...

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Caw, danke für deine

Eingetragen von t2k (258)
am 19.12.2013 - 15:47 Uhr

Hallo Caw,

danke für deine Antwort!

"Exposed" sind die Filter aber bereits.
Das Problem ist nur, dass diese weder als normale noch als exposed-Filter die gewünschten Ergebnisse liefern.

Die Frage ist ja, ob ich mit einer manuell eingegeben SQL-Query vielleicht zum Ziel komme. Nur weiß ich nicht wie und wo ich eine solche in Views eingeben kann.

Beste Grüße!
t2k

  • 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?
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 2 Wochen 4 Tagen
  • Hey danke
    vor 2 Wochen 5 Tagen
  • Update: jetzt gibt's ein
    vor 2 Wochen 6 Tagen
  • Hallo, im Prinzip habe ich
    vor 3 Wochen 3 Tagen
  • Da scheint die Terminologie
    vor 3 Wochen 3 Tagen
  • Kannst doch auch alles direkt
    vor 4 Wochen 1 Tag
  • In der entsprechenden View
    vor 4 Wochen 1 Tag
  • Dazu müsstest Du vermutlich
    vor 4 Wochen 1 Tag
  • gelöst
    vor 6 Wochen 4 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 6 Wochen 5 Tagen

Statistik

Beiträge im Forum: 250234
Registrierte User: 20455

Neue User:

  • JoMek
  • Znogsnernoimb
  • ByteScrapers

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