Egy meghatározott évszám mező tidjéből szeretném a hozzá tartozó nevet kiíratni.Pl.: beküldöm az évszám mező tidjét (field_data_field_ev.field_ev_tid = 1) és alekérem a nevet(taxonomy_term_data.name) Ez hivatalosan két join, azonban az istennek sem tudom a views nézetbe összehozni.
Drupal verzió:
Fórum:
Nem teljesen értem mit
szeretnél. Ha nem is erre gondoltál :) talán érdekes lehet.
Ha pl.:
- Van egy szótárad amiben a kifejezések az évszámok (nyilván minden évszámnak van tid-je).
- Van egy tartalomtípusod, ami ezt szótárat használja, és a tartalom beküldésekor a user választhat kifejezést (évszámot) a szótárból.
Ha most csinálsz egy nézetet erre a tartalomtípusra, de csak azokat a tartalmakat akarod megjeleníteni, amik az adott évszám kifejezéshez hozzá vannak rendelve, akkor átadhatod a nézetnek url-ben a kifejezés 'tid'-jét:
http://example.com/nezeted/22 (itt pl. tid értéke 22)
Felveszel a nézetben egy Contextual filter-t: http://i.imgur.com/BMpSA.png
-----
A nézetedet kódból is hívogathatod, ha csak az eredménye kell és be akarod ágyazni valahova:
Alapvetően hasonlót szeretnék.
Pl. egy tartalomtipus feltöltésénél megadhatom, hogy mikori gyártású. Amikor rákeresek a tartalomtipusra, akkor ki szeretnék rakni egy olyan fejlécet, ahol mindösszesen azok az adatok (mezők) vannak megjelenítve amit keresek. Tehát többek között magát a beküldött évszámot,(és nem pedig a tartalomhoz kapcsolódó mindegyiket)
Ez bizony működik, de miért így?? :))
Köszönöm a segítséget. Kipróbáltam, és tökéletes. Az elvet ugyan nem értem: ha én csupa taxonomy term táblás argumentumra keresek, akkor miért is kell először node táblát lekérni, és miért nem lehet csak a taxonomy_term táblát??
No de ez legyen a legfájóbb kérdésem..............
Lehet nem érthető továbbra sem a kínom.
Tartalomra keresek, azonban a keresési feltételeket a views fejlécébe szeretném megjeleníteni. A nézetnek url-ben átadott argumentumok között többek között megtalálható az évjárat mező tid-je is. Moindösszesen az a vágyam, hogy az átadott argumentumhoz tartozó egyetlen term nevét visszakapjam.jelen esetben a feltöltött tartalomhoz tartozó minden évjáratot listáz, nem pedig a keresési feltétel egyetlen tid-jéhez tartozót.
A term (kifejezés) id alapján
így megkaphatod a term nevét:
-----------
> Az elvet ugyan nem értem: ha én csupa taxonomy term
> táblás argumentumra keresek, akkor miért is kell
>először node táblát lekérni, és miért nem lehet csak
> a taxonomy_term táblát??
Ha nem kell semmi egyéb (pl. nézetben a keresés találatai), csak a term id alapján meg akarod kapni a term nevét, akkor elég az első két sor a fenti kódból (ezek nem használják a node táblát).
Köszönöm. Még egy naiv kérdésem lenne:
Ha pl. term-hez kép, vagy fájl is hozzá van rendelve, azok nevét, vagy pl. az uri-t hasonló módon le lehet kérdezni?
Amúgy még egyszer köszönöm a segítséget.( Az Api-n kivül milyen tutorialt javasolsz a hasonló kérdések megoldásához?)
D7 alatt
szinte mindenhez lehet field-eket kapcsolni így a term-ekhez is, ha belenézel a betöltött term objektumba (http://i.imgur.com/PbukT.png):
és egy mező értékét így írhatod ki:
Kb. így hozzáférsz a kapcsolt mezők értékeihez. De itt több esetet is le kellene kezelni, pl.: ha egy mezőnek több értéke van vagy ha egy sincs.
----------
> Az Api-n kivül milyen tutorialt javasolsz a
> hasonló kérdések megoldásához?
Alapvetően a google-el jutok el az api-hoz és tutoriálokhoz is.
Ha sikerül jól eltalálni a kulcsszavakat, akkor jó. :)
Itt a taxonomiához tartozó függvénysereg:
http://api.drupal.org/api/drupal/modules!taxonomy!taxonomy.module/7
Ez tök jó!
Meg ráadásul logikus is (no meg rém megkönnyíti a munkát). Kár hogy ezekről nincs egy összefoglaló írás.
Köszönöm, rengeteget segítettél!
// A nézet kiíratása
helyett
mintha ugyanazt csinálná egy sorban, mint a másik sok sorban. Vagy nem? Régen használtam már ezt. Illetve annyi különbséggel, hogy a preview formát adja, tehát pl a viewban állított cím nem lesz benne.
----
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.