Vlastní From Renderer – wrapper jako vnořené elementy, páry vedle sebe

TonnyVlcek
Člen | 31
+
0
-

Zdravím,
už s tím blbnu druhý den, a i když jsem se toho o renderování formulářů za tu dobu dozvěděl spoustu nového, pořád nemůžu přijít jak na to.

TL;DR:

  • Jak do wrapperu dostat dva vnořené elementy?
	<div class="col-md-8">    ┐
		<div class="box">     ┤
			/*CONTROLS*/      ├─ controls.container
		</div>                ┤
	<div>                     ┘
  • Jak renderovat dva páry (pairs) „vedle sebe“?
|-pair.container--------------------|
|   |-----------|   |-----------|   |
|   |Label 1    |   |Label 2    |   |
|   |[Input 1]  |   |[Input 3]  |   |
|   |-----------|   |-----------|   |
|-----------------------------------|
  • Máte napsaný nějaký vlastní renderer co dělá něco zajímavýho? (Vůbec to nemusí být pěkný kód, jen ze zvědavosti bych se moc rád kouknul na to, co všechno se s tím dá udělat / jak moc se to dá ohnout)

Ták, a teď celá story:

Tohle by měl být výsledek mé práce (https://snag.gy/DIBmsK.jpg), je samozřejmě jednoduchý tohle renderovat ručně, ale protože píšu administraci a tenhle vzhled byl navržen spolu s UX člověkem (máme dohodu, že opravdu všechny formuláře budou vypadat takhle), tak bych na to rád měl renderer co bude umět formuláře v této podobně renderovat automaticky.

Jenom takhle od pohledu na screeshot, napadá vás jak na to?

Už jsem vyřešil to základní rozložení. Takhle to teď vypadá: https://snag.gy/zEKnZB.jpg

K úplnému vyřešení mi chybí ty první dva problémy popsané v TL;DR a případně ještě vymyslet, jak generovat ty „pilulkovité“ radio boxy, ale do toho jsem se ještě nepustil.

(bod 1) Snažil jsem se nějakým způsobem „hacknout“ chování Html::el() tak, aby $container na který se potom v \Nette\Forms\Rendering\DefaultFormRenderer::renderControls volá addHtml vy skutečnosti obsahoval element navíc, ale každý z mích pokusů selhal.

iguana007
Člen | 970
+
0
-

Myslim, ze by si toho mohl dosahnout pomoci tohoto: https://github.com/…Renderer.php
(Vychazel jsem jen z popisu, screenshoty v praci neotevru, proxy me nepusti)

Editoval iguana007 (23. 2. 2018 14:14)