Symfony2.8 与 sonataEcommerce2.1.1 单个产品页面 "requires that you provide a value for the "$product" argument"
Symfony2.8 with sonataEcommerce2.1.1 single Product page "requires that you provide a value for the "$product" argument"
我正在使用奏鸣曲电子商务。当我尝试打开单个产品页面时,发生控制器错误。
这是详细的错误。
"Application\Sonata\ProductBundle\Controller\ProductController::viewAction()" 要求您为“$product”参数提供一个值(因为没有默认值或者因为在这个参数之后有一个非可选参数)。
无需更改扩展。
这是我的代码:-
从 vendor/sonata-project/ecommerce/ProductBundle/controller/Basecontroller 复制 viewAction 并将其放在 src/Application/Sonata/Controller/ProductController 中。
复制后在 ApplicationSonataProductBundle 中分配 $product = null。
public function viewAction($product = null) {
//Add these lines.
$slug = $this->getRequest()->get('slug');
$productId = $this->getRequest()->get('productId');
$product = $this->get('sonata.product.set.manager')->findEnabledFromIdAndSlug($productId, $slug);
....
}
我正在使用奏鸣曲电子商务。当我尝试打开单个产品页面时,发生控制器错误。 这是详细的错误。 "Application\Sonata\ProductBundle\Controller\ProductController::viewAction()" 要求您为“$product”参数提供一个值(因为没有默认值或者因为在这个参数之后有一个非可选参数)。
无需更改扩展。 这是我的代码:- 从 vendor/sonata-project/ecommerce/ProductBundle/controller/Basecontroller 复制 viewAction 并将其放在 src/Application/Sonata/Controller/ProductController 中。 复制后在 ApplicationSonataProductBundle 中分配 $product = null。
public function viewAction($product = null) {
//Add these lines.
$slug = $this->getRequest()->get('slug');
$productId = $this->getRequest()->get('productId');
$product = $this->get('sonata.product.set.manager')->findEnabledFromIdAndSlug($productId, $slug);
....
}