Jak ve views použít argument node reference reference :)
Vložil/a Petr Illek, 8 Červenec, 2010 - 20:08
Kategorie:
Jak na to?
Týká se verze:
Drupal 6.x
Mám následující kombinaci: Výrobek, který má node reference na Výrobce a ten má node reference na Typ produktu. Přes Views mám udělaný blok, který mi při zobrazení Typu produktu zobrazí Výrobce, kteří na něj odkazují. A já bych ještě navíc chtěl, aby se mi zároveň zobrazili i produkty odkazující na tyto výrobce. Zkoušel jsem různě experimentovat s relationships a argumenty, ale k výsledku to nevedlo. Jde to vůbec nějak? Není to pro mě nezbytná featura, ale spíš mě to už zajímá…
No a nemůžeš tam zanořit
No a nemůžeš tam zanořit ještě jedno view do toho existujícího? views_embed_view(), které zobrazí u každého výrobce ty výrobky? Relationships by tady ani nebyly třeba, stačilo by zase NID jako argument.
podle me spatny navrh. proc
podle me spatny navrh. proc ma vyrobce referenci na typ produktu? jinak souhlas s Emou, byl by to view zanoreny do view.
Ono to vychází z té
Ono to vychází z té struktury, kterou jsem tu už rozebíral. Výrobce (Bramac) má node reference na Betonové střešní tašky. Takže ve výsledku bude struktura procházení webu – 1. úroveň Střešní krytiny, 2. úroveň Betonové, 3. úroveň Bramac, 4. úroveň Bramac MAX. Myslím, že návrh je v pořádku, jen ta terminilogie se trochu bije :). Každopádně Karlosi díky, už za včerejší nakopnutí. Jdu se vrhnout na Views-embed-View()…
Normalizace databáze
No, popravdě, já se ztrácím v podobné záležitosti. Zajímalo by mne, jestli při uvažování ala Drupal uvažujete i v intencích normalizace databáze. Já se snažím udělat katalog karavanů. Takže jsem si založil tři typy obsahu – Kartu výrobce (tam jsou pomocí CCK přidaná pole na adresu a kontakty, popř. na logo), dále Kartu modelové ředy (volně psaná stránka, která obsahuje obecný popis dané modelové řady a parametry společné pro karavany v této modelové ředě, neboli sériová výbava, možná to udělám přes CCK, pokud zjistím potřebu nějakých parametrů). A pak samozřejmě Karta karavanu jakjo takového. Pomocí CCK mám pole popisující parametry daného konkrétního modelu karavanu. Každý karavan někdo vyrobil (node reference ??? na Kartu výrobce ??? ) a každý karavan patří do nějaké modelové řady ( node reference na Kartu modelové řady ??? ). Ale prostě se mi nedaří dosáhnout toho, aby při vypsání Karty karavanu byla pole Výrobce proklikávací na Kartu výrobce a pole Modelová řada bylo proklikávací na Kartu modelové ředy.
Na začátku jsem prostě uvažoval v intencích normalizace databází a snažil se snížit duplicitu uchovávaných údajů pomocí rozbití na více tabulek. V klascické relační databázi je to otázka okamžiku, nastavím vlastní a cizí klíče, udělám relace, naprogramuju si kód pro dotazy. Ale pomocí mechanismů Drupalu se mi nedaří to udělat.
Uvažuju správně, že pole, která jsou node reference, se mají změnit automaticky na volání toho souvisejícího záznamu v jiné tabulce???
A ještě dotaz trochu mimo. Když do polí utvožených pomocí CCK zadám platnou emailovou nebo webovou adresu, tak se z nich nestane na stránce proklikávací odkaz, ačkoli ukládám jako Full HTML a je v Drupalu napsáno, že webové a emailové adresy budou převedeny na odkazy. Ale zřejmě ne tehdy, když jsou jako pole CCK. :-(
Posune mne někdo?
Karta výrobce (s těmi nefunkčními odkazy emailové a webové adresy – úplně dole) třeba zde: http://www.sextagon.cz/…ravan-gmbh-0
Karta karavanu (který patří tomuto výrobci, ale není možné se na výrobce prokliknout a do nějaké modelové řady) třeba zde: http://www.sextagon.cz/…anco-390-fhs
Petr Vavřinec
Nemám teď možnost to
Nemám teď možnost to vyzkoušet, ale nejsou ty odkazy nastavitelné na záložce Display fields v CCK? Co se týče emailu a www adres, tak pokud to mají být CCK pole jen s tímto údajem, pak použijte CCK Link a CCK E-mail…
uvazujete spravne, mrknete se
uvazujete spravne, mrknete se na upravu typu obsahu karavan a tam na kartu „display fields“ tam by mela byt moznost tu nodereferenci zobrazit jako titulek(tedy nazev vyrobce) s odkazem. na webovky a email asi nemate patricny modul(email a link namisto klasickeho text field)?
to bude mit kazdy vyrobce
to bude mit kazdy vyrobce 20 nebo 100 referenci na ruzne druhy zbozi?
Maximálně tuším tři a to asi
Maximálně tuším tři a to asi jen u jediného výrobce.
Poslat nový komentář