在Magento2 成功页面出现下面问题
Magento\Framework\Exception\InputException): An ID is needed. Set the ID and try again.
这个错误通常是由于在 Magento 2 中调用某个方法时未传递必需的 ID 参数引起的。例如,如果您尝试获取特定订单的详细信息,但未传递订单 ID,则会出现此错误。
要解决此错误,您需要确保在调用方法时传递了必需的 ID 参数。例如,如果您要获取特定订单的详细信息,请确保传递了订单 ID,如下所示:
<?php
use Magento\Sales\Api\OrderRepositoryInterface;
class GetOrderDetails
{
protected $orderRepository;
public function __construct(OrderRepositoryInterface $orderRepository)
{
$this->orderRepository = $orderRepository;
}
public function getOrderDetails($orderId)
{
$order = $this->orderRepository->get($orderId);
// Do something with the order details
}
}
// Usage
$getOrderDetails = new GetOrderDetails($objectManager->get(OrderRepositoryInterface::class));
$orderDetails = $getOrderDetails->getOrderDetails(100000001); // Replace with your order ID
在上面的代码中,我们注入了 OrderRepositoryInterface
,并在 getOrderDetails
方法中使用 $orderRepository->get($orderId)
获取特定订单的详细信息。在使用 $getOrderDetails->getOrderDetails(100000001)
调用方法时,我们传递了订单 ID(100000001),以便获取特定订单的详细信息。
请注意,上面的示例仅用于说明如何传递必需的 ID 参数。在实际开发中,您需要根据您的具体需求调整代码。