Views - CCK - Overzicht ==> Detail

Beste allemaal,

Ik had reeds een post gedaan op drupal.org, maar soms duurt het er erg lang vooralleer je een antwrood krijgt en 'k zou dit graag zo snel mogelijk implementeren.

Ik heb via CCK een nieuw type (adres) gemaakt met een hele boel velden. Dit is ok.
Ik heb een view gemaakt: adres_list van het type: Table View met een aantal velden.
Ik heb ook een view aangemaakt: adres_detail van het type List View waar ik alle details wil tonen.

Ik zou graag (op z'n minst één) velden van de adres_list (dus de table view) clickable maken en doorlinken naar de adres_detail view. Hoe kan ik dit doen?

(nu heb ik een Node: Link view - doch die linkt gewoon door naar node/x en ik wil echt dat die naar de adres_detail gaat, zodat ik deze op een eenvoudige manier met contemplates kan stylen, ed.)

Hopelijk heeft iemand raad, een voorbeeld, een how to... Indien verdere informatie gewenst, laat het even weten.

Alvast bedankt, groetjes,
Fossie

Auteur: 
fossie@drupal.org
Door Passero op 6 maart, 2007 - 16:19

Ik weet niet of ik het goed begrijp...
Je hebt een Master view: adres_list en een child view adres_detail? Is er tussen beide views een relatie of heb je maar 1 adres_detail en linkt elk record in adres_list naar dezelfde view en geeft die dezelfde resultaten?

Ik vermoed dat het het eerste geval is en om dat op te lossen denk ik dat je een beetje code zal mogen schrijven. Het is mogelijk om zelf je template te schrijven voor een view. De view_template module kan je hierbij helpen (ben niet zeker van de naam).
In je adres moet je dan een extra veld steken met de juiste link naar de view; Het veld moet van het type link zijn. Dat veld neem je dan op in je view adres_list.
Doordat je met een template kan werken, bepaal je in die template zelf welke velden je op het scherm wil laten afdrukken. je kan dus het link veldje gebruiken om in je template iets te schrijven als

$titel

$link is dan de code voor de inhoud van het link veldje te tonen (ken het niet direct van buiten maar kan het later even opzoeken) en $titel is hetzelfde voor de titel.

Als je iets anders bedoelt met adres_list en adres_detail dan heb ik dus de bal compleet misgeslaan en mag je mijn uitleg negeren ;)
Gelieve dan beetje duidelijker te zijn en misschien een voorbeeldje te schrijven zodat we het beter snappen.

---------------------
http://blog.yonaweb.be

http://blog.yonaweb.be

Door fossie@drupal.org op 6 maart, 2007 - 23:34

Bedankt, maar eigenlijk is het GEEN master/detail. Het betreft één CCK type (Adres) waar ik TWEE verschillende views op gebouwd heb. (Misschien is dit niet de juiste manier van werken, maar dit leek mij het meest voor de hand liggend.)

Dus CCK-type Adres bestaat uit
Naam/Adres/Woonplaats/Tel/GSM/ExtraInfo....

In view: adres_list wil ik enkel naam en woonplaats tonen
In view: adres_detail, wil ik alle velden tonen

De adres_list daarin is elk veld clickable zodat je in de VIEW adres_detail uitkomt.

Eigenlijk is het simpel, maar ik zie echt niet hoe het op te lossen :-)

Alvast bedankt voor de moeite en hopelijk bestaat hier een eenvoudige oplossing voor.
F.

Door Passero op 7 maart, 2007 - 08:32

Ah nu begrijp ik het :)
Ik denk dat je het heel simpel kan oplossen maar dan ietsje anders dan de manier waarop jij het beschrijft:
Met de Insert view module kan je op een pagina een view tonen.

Je maakt dus een doodgewone pagina aan. Daarin schrijf je volgende code (als de insert view module is ingeschakeld):

[view :adres_list]

Deze code zorgt ervoor dat op die pagina de view adres_list zal getoond worden.
Het leuke hieraan is, dat je dus op die pagina nog zoveel tekst, boven en onder, de view kan bijplaatsen.
Ik zou zeggen, boven de view schrijf je dan:

Details

Dus uiteindelijk krijg je in de body van je pagina volgende code:

Details
[view :adres_list]

Let ook op als je de tinymce module gebruikt als editor dat je eerst naar html mode gaat voor je bovenstaande code ingeeft anders zal hij die <a href.... niet interpreteren als een link maar als gewone tekst.

Als je dit opslaat en je bekijkt de pagina zie je eerst een link naar het detailscherm en dan de adres_list view.
Het is niet 100% wat je wil maar de functionaliteit is er toch

Ik hoop dat het duidelijk is en dat dit jouw vraag beantwoord.

----------------------
http://blog.yonaweb.be

http://blog.yonaweb.be

Door fossie@drupal.org op 7 maart, 2007 - 11:09

Bedankt, dit is al een stap in de goede richting, maar toch is het nog niet wat ik wil doen.

Adres (cck) bestaat uit
Naam/Adres/Woonpl/Tel/GSM/info...

Ik wil tonen (in een tabel onder elkaar):
Naam Woonplaats
Bart Antwerpen
Gert Berchem

Bart en Antwerpen zouden clickable moeten zijn en verwijzen naar
adres_detail/x met als referentie de juiste parameter voor de detailview (type list view) op te halen

Gert en Berchem clickable om naar de view (list view) met het juiste detail van Gert en Berchem te gaan.

Dus denk dat ik wel twee views moet gebruiken:
nl: adres_list (type table view met daarin twee velden)
en adres_detail (type list view met daarin meerdere velden)

Hopelijk is het nu beetje duidelijker, al weet ik niet hoe het nog meer in detail neer te schrijven om het uit te klaren.

Nogmaals erg hard bedankt,
F.

Door Passero op 7 maart, 2007 - 11:24

Het is dus toch Master/Detail zoals beschreven in mijn eerste post.
Afhankelijk van welke record je aanklikt, moet de view een parameter binnenkrijgen.

Je moet die parameter als Argument doorgeven met de view.
Het verschil tussen een filter en argument, is dat een argument in de URL wordt meegegeven.
In jouw geval noemt de view detail_view en als je een argument Node: ID hebt toegevoegd dan zal je als je als URL adres_detail/10 ingeeft, de view adres_detail krijgen maar waar hij voor de parameter Node: ID 10 gebruikt en de view daar dan op baseert.
Ik denk niet dat je Node: ID kan gebruiken als argument aangezien je niet direct de ID kan achterhalen.

Op die manier kan je dan wel een unieke URL hebben per adres die je in een CCK kan wegschrijven en dat veld tonen in je view.

---------------------
http://blog.yonaweb.be

http://blog.yonaweb.be

Door fossie@drupal.org op 7 maart, 2007 - 12:36

Sorry voor de verwarring, mijn fout.

Ik bedoelde dat er geen Master/Detail relatie lag tussen CCK types, het is geen 1-n relatie ofzo.

Ik probeer jouw strategie te volgen en hoop het voor mekaar te krijgen. Hou je op de hoogte, hoop het in de loop van de namiddag te kunnen bekijken.

Door fossie@drupal.org op 8 maart, 2007 - 23:01

Bedankt, het is me gelukt, al heb de coding rechtstreeks gedaan van de view, niet via een extra veld in het cck type.

Bookmark and Share

Drupal is een geregistreerd merk van Dries Buytaert. | Powered by Pantheon.

Drupal.be/Drupal.nl is de website van de Nederlandstalige Drupalgemeenschap.