Nette database mi nepracuje dobre s tabulkami kde je pouzit typ DATERANGE

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

Použitá databáze PostgreSQL a PHP7.

Nette database mi nepracuje dobre s tabulkami kde je pouzita hodnota typu DATERANGE.

Kdykoliv se třeba jen pokusím získat z tabulky řádek metodou $db->table(NAZEVTABULKY)->get($id) nebo metodou $db->table(NAZEVTABULKY)->where(‚id ?‘, $id)->fetchAll();

vrati vzdy chybu v hloubi nette znění:

„DateTime::__construct(): Failed to parse time string ([2015–11–13,2015–11–16)) at position 0 ([): Unexpected character“

kdy vůbec neočekává že by hodnota mohla začínat ve formátu daterange hranatou závorkou (zřejmě chybně očekává prosté datum, nikoliv datumový rozsah od-do)

nette zřejě neumí vůbec rozpoznat typ daterange. Je to možné ? Prosím poraďte zda se jste se setkali s obdobným problémem nebo jsem s postgresql natolik atypický případ že podporu tohoto typu který mysql nezná nemohu očekávat. Děkuji za info či nakopnutí správným směrem.

AdamVyborny
Člen | 36
+
0
-

Používáme dibi a s tou si daterange v pohodě vypíšu. Tvoji chybu mi to vyhodí (logicky) až ve chvíli kdy na to zkusím použít v šabolně

{$toApproveRow->app_date|date:'j. n. Y'}

Takže zrovna řeším, jak nejelegantněji z toho dostat dva datumy, abych si je mohl přeformátovat. Nejednodušší byl byl substr, ale myslím si, že musí bejt lepší metoda. Neví někdo?

David Grudl
Nette Core | 8239
+
+3
-

Zkusil jsem to fixnout.