AJAX, snippety a renderování widgetů
- Jakub Lédl
- Člen | 55
Zdravím, potřeboval bych pomoc s jedním opravdu bizarním problémem –
hraju si tak s Nette, zkouším jet podle quickstartu, rozjedu všechno,
včetně komponent, a dostanu se až k té neexistující části o AJAXu. Po
pár problémech (jiná verze jQuery atd.) se mi podaří vše rozjet. AJAXové
stránkování funguje. Ten bizarní problém spočívá v tom, že widgety
(@{control dg:paginator}
a @{control dg:grid)
se mi
nečekaně renderují úplně navrchu HTML stránky, ještě před
<!DOCTYPE>. Přikládám kód šablon a layoutu:
@layout.phtml
<?php
<!-- doctype -->
<html>
<!-- hlavička -->
<body>
<h1>DataGrid - Nette Framework example</h1>
{include #content}
</body>
</html>
?>
templates/table/default.phtml
<?php
{block #content}
<h2>Tabulka "{$table}"</h2>
<p><a href="{plink Default:}">Zpět</a></p>
@{control dg:paginator}
@{control dg:grid}
?>
Používám Nette 0.9.2, revize b9fd602, PHP 5.3.0, Zend Engine 2.3.0, na Mac OS X 10.6.
Ještě mě tak napadá, asi není úplně košer, že na PHP
5.3 používám Nette pro PHP 5.2, že? Nevím, jaký je plný rozsah uvedení
jmenných prostorů do PHP 5.3, ale mám jistotu, že drtivá většina mých
projektů se nebude dělit o diskový prostor s jinými frameworky,jako
člověku přirozeně línemu se mi nechtělo otravovat se s
use ...
, a zatím se zdálo, že vše běží v pohodě.
- Ondřej Mirtes
- Člen | 1536
Na používání verze pro PHP 5.2 na 5.3 není nic špatného, jen seš „ochuzen“ o namespaces. Nejčastější konflikt bývá s třídou HttpRequest, protože občas bývá na nějakém hostingu nainstalované nějaké HTTP rozšíření pro Apache, který stejnojmennou třídu používá.
A co se týče tvého AJAX problému – klasika, máš špatně zavináče.
Editoval Ondřej Mirtes (4. 1. 2010 0:16)
- Jakub Lédl
- Člen | 55
Děkuji za rychlou odpověď i v tuto pozdní hodinu :-).
To že tento problém vznikl, si vysvětluju dvěma způsoby – příloha, která je ke stažení v nedopsaném quickstartu buď počítá s jinou verzí Nette, nebo je v ní krpa :-)
- lucass
- Člen | 89
Podle mě bude problém v zavináčích. Zkus dát @ před include a block, viz https://forum.nette.org/…agie-v-praxi.
Editoval lucass (4. 1. 2010 9:36)