Bug v novém Nette/Database join parser?

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

https://github.com/…29f36a5f9df1#…

Používám Nette/Database discovery reflection.

Uvádím zjednodušený příklad, kde dochází k chybě.

Jak jsem to měl před commitem a fungovalo:

$params = $this->table('product_parameters')
	->where('product.category_id = ? OR product.product_category:category_id = ?', $category_id, $category_id);

Úprava po commitu

$params = $this->table('product_parameters')
	->where('product.category_id = ? OR product:product_category.category_id = ?', $category_id, $category_id);

mi vyhodí

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'products.id' in 'on clause'
SELECT `product_parameters`.*
FROM `product_parameters`
LEFT JOIN `products` AS `product` ON `product_parameters`.`product_id` = `product`.`id`
INNER JOIN `product_category` ON `products`.`id` = `product_category`.`product_id`
WHERE (`product`.`category_id` = 29 OR `product_category`.`category_id` = 29)

Je to bug, nebo jak mám docílit toho aby se použilo product.id namísto chybného products.id

hrach
Člen | 1836
+
0
-

Díky, opraveno. Bylo to tim, ze jsem rabasoval stary kod, kde to jeste nebylo opraveno, ale ja si myslel, ze uz bylo :( :D
https://github.com/…te/pull/1021