problem s dibi, prechod na v2.0

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Stig
Člen | 29
+
0
-

Ahoj, prosim o radu. Upgradoval sem na verzi 2.0 (php 5.2) a nemuzu rozchodit /najit/ dibi. Konkretne z ladenky „Class ‚dibi‘ not found“.
Dibi mam stale na stejnem miste jako pred upgradem v libs vedle Nette.

V index.php

<?php
define('LIBS_DIR', WWW_DIR . '/../libs');
?>

struktura

<?php
root/
--app/
--www/
--libs/
----dibi/
----Nette/
?>

asi uplna blbost, ale proste nevim. dik

Editoval Stig (13. 2. 2011 0:18)

Peter9
Člen | 69
+
0
-

Ak si myslím správne, že je môj úsudok správny, že už v Nette Frameworku 2.0 existuje DBAL (asi pôvodne z DIBI) tak potom nie je nutné mať Dibi. Či?

Je potrebné Dibi, ak už je v Nette FW API DBAL (z DIBI) ?

srigi
Nette Blogger | 558
+
0
-

Skontroluj si, ci nemas v lib/dibi nejaky robots.txt. Poriadne premaz cache.

Aurielle
Člen | 1281
+
0
-

Peter9: Nette\Database založené na NotORM a dibi jsou dvě rozdílné věci.

Stig
Člen | 29
+
0
-

Muzu teda pouzit dibi, nebo zbyva jen vrstva Nette\Database?

Peter9
Člen | 69
+
0
-

dibi ostáva. API vrstva Nette\Database je založená na odlišnej myšlienke (technológii).

O hej, a nezabudni zmeniť kód:

$db = Environment::getConfig('database');
dibi::connect($db->toArray());

Lúštil som to chvíľu, prečo to nie je také elegantné ako to kedysi bolo, a je nutnosť používať ďalších dočasných premenných (v Bootstrape to ho nie je veľa, ale aj tak)…

Editoval Peter9 (13. 2. 2011 13:40)

Stig
Člen | 29
+
0
-

dik, nakonec od dibi upoustim.
Mam v aplikaci VisualPaginator, aby fungovala funkce applyLimit(x,y) potrebuje ‚dataSource‘. Jak na nej v Nette/Database ?

v dibi je to zhruba takhle

<?php
return new DibiDataSource($this->table, dibi::getConnection());
?>
Aurielle
Člen | 1281
+
0
-

VisualPaginator lze použít jakkoliv, na DataSource není vázán. Je tedy jen na tobě, jakým způsobem budeš stránky přepínat a do SQL předávat limit a offset…