Úprava dotazu z views aneb lze použít hook_views_query_alter()?
Zdravim,
hledal jsem, ale nikde nenašel :( Jde nějak ručně upravovat dotaz z views?
Mám např. pohled „rejstriky“ kde, chci, aby autori byli serazeni podle prijmeni. Problém je ten, že názvy autorů jsou uvedeny ve formátu „Jméno Příjmení“ a já potřebuji invertovanou verzi. Tedy seřadit je podle příjmení. Napadlo mě použití
ORDER BY SUBSTRING( `name`, LOCATE( ' ', `name`))
které mám v mysql odzkoušené a funguje, ale nevím jak mám dotaz views tímto způsobem upravit. Našel jsem funkci hook_views_query_alter(), ale nějak jsem nepochopil její použití – slabá angličtina. Nemůžete mě prosím někdo nakopnout? 8) Díky všem
Dodatek: našel jsem článek na http://www.nicklewis.org/…iews-queries, ale nechápu jak toto použít.
Opravdu nikdo nemá ani tušení
Opravdu nikdo nemá ani tušení na nějaký nápad?
Ked si spravis sablonu pre
Ked si spravis sablonu pre view tak by tam mali byt potrebne data ktore si mozes prisposobit.
No to je fakt, ale myslím že
No to je fakt, ale myslím že mnohem jednodušší a efektivnější než přeuspořádat ty výsledky dotazu bude položit dotaz nový. Dejme ale tedy tomu, že bych to při nejhorším udělal takto – jak ale teda ty data (výsledky dotazu) přeuspořádám? Jsou vůbec uložena v nějaké proměnné jako pole nebo objekt? Co já vím, tak si v té šabloně můžu změnit zobrazení konkrétního záznamu z dotazu, ale nevím o žádné proměnné, ve které by byly ty výsledky všechny. 8)
$view ?
$view ?
Podla mna rucne upravovat ten
Podla mna rucne upravovat ten dotaz asi nepojde – ved views su prave na to aby si to nemusel robit rucne. Ja niekedy preferujem prave rucne napisanie query ale to vyzaduje obsluzit si sam vsetky veci okolo (vlastny modul napr.)…
No já to nakonec udělal tak,
No já to nakonec udělal tak, že jsem ve views udělal 1 velice rychlý dotaz, jen abych mohl využívat ostatních vychytávek views. Pak jsem si vložil dotaz svůj. Nakonec stejně asi udělám řazení podle jména a pak příjmení, protože by to bylo pro uživatele asi trošku matoucí vidět jméno v přirozeném tvaru a mít to seřazené invertovaně. Řazení jsem potřeboval ve slovníku, takže při nejhorším se dá stejně řadit ručně. U nodu je to totiž mnohem snazší, protože si mohu vytvořit pole příjmení a řadit to dle něj třeba.
hlavně když si tahle řadíš
hlavně když si tahle řadíš sám (nebo nepochopil jsem, co jak děláš), tak si dej bacha na výkon. Pokud možno by všechno měla sortit databáze, ne aplikační logika.
A preco to meno nerozdelis na
A preco to meno nerozdelis na meno a priezvisko? A mas po probleme.
No hmm, dalsi clanok
No hmm, dalsi clanok http://www.appnovation.com/modifying-views – pouzitie je asi take ze do vlastneho modulu das ten hook a zmenis pozadovane casti sql query. Predtym aby si vedel z coho sa query sklada je vhodne si cez
print_r()alebodpm()(ak mas modul devel zapnuty) vypisat co ta premenna$queryobsahuje aby si vedel co mas zmenit.Poslat nový komentář