Struktura webu – jak navrhnout stromovou strukturu presenter/šablona/akce

cafesk8
Člen | 103
+
0
-

Zdravím,

přemýšlím jak docílit takovéto struktury abych neměl zbytečně příliš mnoho presenterů/šablon/akcí apod.

domain.com/foo/big/layout-1/
domain.com/foo/big/layout-2/
domain.com/foo/big/layout-3/
domain.com/foo/small/layout-1/
domain.com/foo/small/layout-2/
domain.com/foo/small/layout-3/

Teď mám pouze FooPresenter.php

a šablony takto:

templates
	Foo
		default.latte (rozcestník na big.latte a small.latte)
		small.latte (rozcestník na layout-1.latte -> layout-3.latte)
		big.latte (rozcestník na layout-1.latte -> layout-3.latte)

Teď nevím kam mám umístit již samotné šablony „podstránek“ tak abych neměl v jedné složce moc souborů a zároveň zachoval strukturu URL výše – původně jsem to měl takto, ale to se mi opravdu nelíbí a myslím si že to není správně (navíc i URL un-friendly).

templates
	Foo
		default.latte
		small.latte
		big.latte
		smallLayout1.latte
		...
		smallLayout3.latte
		bigLayout1.latte
		...
		bigLayout3.latte

Možná udělat více presenterů a poté vyřešit routováním? Např.:

	FooPresenter.php
	FooSmallPresenter.php
	FooBigPresenter.php

Snad jsem se vyjádřil alespoň trochu srozumitelně.

David Matějka
Moderator | 6445
+
+1
-

Pokud dáš konkrétní příklad, co je „Foo“, „big“ a „layout-1“, tak by se nechalo poradit lépe

takhle ti jen poradím, že je lepší mít více malých presenterů, které mají pouze jednu akci

cafesk8
Člen | 103
+
0
-

@DavidMatějka : jedná se o konfigurator pro tvorbu bannerů (v každém view bude trochu rozdílný formulář).

domain.com/banner/veritcal/velky
domain.com/banner/veritcal/stredni
domain.com/banner/veritcal/maly
domain.com/banner/horinzontal/velky
domain.com/banner/horinzontal/stredni
domain.com/banner/horinzontal/maly
vit.peprnicek
Člen | 20
+
+1
-

Jestli se jednotlivé konfigurátory moc neliší, použil bych na to jeden presenter a 3 akce

  • Výběr horizontal/vertical, routa "/banner"
  • Výběr velikosti, routa "/banner/<format>"
  • Samotný konfigurátor, routa "/banner/<format>/<velikost>" podle parametrů format a velikost by se konfigurátor přizpůsobil.