0
我有一個CakePHP 3.0安裝程序。我已經設置了一個自定義路由來將SKU傳遞給控制器,但無論我做什麼,都不會將傳入的參數正確插入到SQL中。將路由參數傳遞給CakePHP控制器
我的路線是這樣的:
$routes->connect('products/:sku', ['controller' => 'Products', 'action' => 'sku'], ['pass' => ['sku']]);
我可以通過登錄控制器動作找到參數$ SKU。但正如你所看到的,在SQL中,sku被傳遞爲:c0。 (順便說一句,我正在通過'samsung-galaxy-s3'作爲SKU)。
SELECT `Products`.`id`
AS `Products__id`, `Products`.`attribute_group_id` AS `Products__attribute_group_id`, `Products`.`order`
AS `Products__order`, `Products`.`alias` AS `Products__alias`, `Products`.`stock`
AS `Products__stock`, `Products`.`sku` AS `Products__sku`, `Products`.`price` AS `Products__price`, `Products`.`tax_id`
AS `Products__tax_id`, `Products`.`weight`
AS `Products__weight`, `Products`.`active`
AS `Products__active`, `Products`.`created`
AS `Products__created`, `Products`.`modified`
AS `Products__modified`, `AttributeGroups`.`id`
AS `AttributeGroups__id`, `AttributeGroups`.`name`
AS `AttributeGroups__name`, `Taxes`.`id` AS `Taxes__id`, `Taxes`.`is_default`
AS `Taxes__is_default`, `Taxes`.`name`
AS `Taxes__name`
FROM `products` `Products` INNER JOIN `attribute_groups` `AttributeGroups`
ON `AttributeGroups`.`id` = (`Products`.`attribute_group_id`)
INNER JOIN `taxes` `Taxes` ON `Taxes`.`id` = (`Products`.`tax_id`)
WHERE `Products`.`sku` = :c0
':c0'是值綁定的佔位符。如果正在執行的查詢出現問題,請添加更多詳細信息,例如控制器代碼和實際執行的查詢(請查看[** DebugKit **](http://book.cakephp.org/3.0) /en/debug-kit.html))。 – ndm
你可以在這裏發佈你的查詢代碼,所以我可以很容易地解釋... –