Összetett keresés exposed views-al

KaoszNagymaester képe

Sziasztok!

Az alábbiban szeretném a segítségeteket kérni:
Olyan oldalt tervezek, ahol a beküldött tartalomhoz sok tulajdonság fog tartozni, amikre egy összetett keresővel szűrni lehet.
Már sok irányban elindultam, de végül most ott tartok, hogy minden tulajdonságot taxonómiaként adtam meg.
Az összetett keresést a view modul exposed funkciójával próbálom megvalósítani.

A problémámat megpróbálom egy példán keresztül leírni:
1. Egy szálláskereső oldalra felveszek egy szállást ahol bepipálom, hogy van jacuzzi.
2. Felveszek egy másik szállást ahol van szauna.
3. Keresésnél (exposed view) ha bepipálom az egyiket, vagy a másikat, akkor értelemszerűen az egyiket, vagy a másikat találja meg.
4. Ha bepipálom mind a kettőt, akkor mind a kettőt kiírja, de én azt szeretném, hogy csak akkor legyen találat, ha van olyan szállás, ahol mind a kettő van.

A másik ehhez kapcsolódó problémám:
1. Van két taxonómia: Szállás típusa, Wellness.
2. Ha a szállásnál kiválasztom a hotelt, és keresés, akkor nem talál semmit, mert a wellness taxonómiában nem választottam ki semmit. Itt nekem úgy lenne logikus, hogy ha csak az egyik taxonómiában adok meg szűrőt, pl. Hotel, akkor listázza ki a hoteleket. Ha hozzá bepipálom a szaunát, akkor csak a szaunás hoteleket...

Az egész működést valahogy így képzelem el: Alapból ha nem pipálok ki semmit, listázzon mindent. Amint elkezdem bekapcsolni a szűrőket, úgy csökkentse a találati listát. Ezt persze ne zavarja, hogy a szűrési feltételek több taxonómiából épülnek fel.

Remélem érthető voltam, és bocs, hogy kicsit hosszúra sikerült, régóta szívok ezzel. :S

Köszi előre is!

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 
opera11 képe

Az Operator: Is one of-ra van téve nem? Is all of-al próbáltad már? Egyébként nem kell feltétlenül taxonómia, a CCK Option Widgets-el lehet hasonlót csinálni, érdemes az is megnézni.

0
0
KaoszNagymaester képe

Átállítottam Is all of-ra, de így bármit pipálok ki, semmit nem talál. :(
Ha ennek nem lesz megoldása, kipróbálom a CCK Option Widgets-et.

0
0
pp képe

Csinálj 4-5 tulajdonságot mindkét megoldással és nézd meg az egyik és másik esetben milyen query-t generál a views. Tolj bele pár ezer node-ot és mérd a sebességet.

pp

0
0
pp képe

Első probléma:
Szótár = szempont rendszer ami szerint csoportosítani szeretnél. Te a szaunát és a jakuzzit a wellness nevű szótárba vetted fel és innen a probléma. Hozz létre nekik külön szótárat, hisz a szempontod az, hogy van-e szauna és van-e jakuzzi. Ekkor már működnie kéne.

Második problémára lásd a legelső hozzászólást.

Természetesen pár form_altert nem fogsz tudni megúszni szerintem, hogy szépen nézzen ki a dolog és használható legyen. A views csak a vázat adja.

pp

0
0
KaoszNagymaester képe

Mindegyik kifejezésnek külön szótárat?
Én így csináltam:

Típus (szótár, csak egy kifejezés választható)
- Hotel
- Panzió

Wellness (szótár, több kifejezés is választható)
- Szauna
- Jacuzzi

Ellátáts (szótár, több kifejezés is választható)
- Reggeli
- Félpanzió

...

Ha mindegyik kifejezésnek külön szótárat hozok létre, teljesen átláthatatlan lesz, nem?

A Drupalban tényleg ennyire nehéz egy ilyen alapvető dolognak gondolt összetett keresés megvalósítása?

0
0
pp képe

Most akkor kipróbáltam, hogy nehogy véletlenül is hülyeséget írjak.
A második problémádat nem is értem. Simán megy a keresés nekem úgy ahogyan azt elvárná az ember. Tök pöpecül szűri a hoteleket, panziókat, jakuzzi, félpanzió meg minden.

Az első problémádra továbbra is az általam vázolt lesz a megoldás. Ha nem érted a válaszom végét akkor meg tanulj és kérdezz. :D Ott leírom ugyanis hogyan lehet széppé varázsolni egy ilyen csúnya dolgot.

Drupal olyan mint a Lego: Bármit kirakhatsz belőle de mindig rücskös lesz a teteje. - pp -

Az, hogy bonyolult, vagy sem, egyszerű vagy alapvető az meg annyira szubjektív, hogy csak na.
Ha a két kérdést a végén komolyan gondoltad akkor kérdeznék én is kettőt:
Ha ismersz olyan rendszert amiben ez sokkal egyszerűbben megoldható, mint a Drupalban, akkor miért nem azt használod? (tényleg komolyan kérdezem, megfelelő feladatra a megfelelő eszközt.) Ha meg nem ismersz ilyen eszközt akkor miből gondolod, hogy ez olyan alapvető és egyszerű lenne?(ez meg itt csak amolyan gondolat ébresztés akar csak lenni... hátha)

pp

0
0
szantog képe

Apropó! Ha netán sikerülne összehozni esetleg mindkettőt, nagyon kíváncsi lennék a performance különbségre. Nyilván más algoritmus alapján szűr a FS és a views is, érdekelne, mekkora a különbség.

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

KaoszNagymaester képe

Megcsináltam ugyanezt CCK checkbox mezőkkel. Úgy nekem is tökélestesen működik a szűrés, nem tudom a szótáras verzióval mi a gond.

Viszont én is olvastam, hogy a CCK mezős megoldás nem túl optimális nagy adatbázis esetén. Így most utánanézek a Faceted Search-nek.

pp: Jogos a kérdés, mi egyszerű és mi bonyolult. :) A Drupal-t egyedül kezdtem el megismerni, eddig elég sok mindent sikerült vele megoldanom, ez az első probléma, ami nagyobb időre megfogott. Innen jött, hogy ez bonyolult.. :)

0
0
szantog képe

Biztos, hogy a views jó ennyire összetett keresésre? Mert pl a Faceted search pont erre lett kitalálva. A keresési oldalon megkapod az összes szótár kifejezést, és úgy szűrsz-csavarsz, ahogy akarod.

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

KaoszNagymaester képe

Megtaláltam miért viselkedett ilyen furcsán a szűrés:
Be volt kapcsolva ez a modul: BetterSelect. A multiselect ablakokból checkboxos megjelenítést csinált, csak éppen azt okozta, amit az első hozzászólásomban írtam.

Van egy hasonló modul: Better Exposed Filters. Ez szuperul működik, az exposed résznél lehet megadni, hogy a mező checkbox legyen-e. A szűrés is tökéletes, szótárakkal is CCK-val is. Ezzel csak az a bajom, hogy tartalom beküldésénél marad a multiselect, vagyis a CTRL + klikkelés.
Már csak ide szeretnék egy checkbox-os megoldást, és boldog is lennék. :)

0
0
aboros képe

Már csak ide szeretnék egy checkbox-os megoldást, és boldog is lennék. :)

content_taxonomy modullal forgasd át a szótáraidat mezőbe és akkor használhatsz olyan cck widgetet az űrlapon, amilyet akarsz. ha akarod radio lesz, ha akarod autocomplete (még akkor is, ha a szótár amit használ amúgy nem "free tagging") .. szóval ezer előnye lesz, úgy fog a taxonomy viselkedni, mint akármilyen cck mező.

0
0

-
clear: both;