Sylius电子商务框架(Symfony) - 如何用价格创建产品?

时间:2017-04-20 07:45:17

标签: symfony sylius

如何以编程方式在Sylius Framework上以价格创建产品?

以下是我创建产品的方法:

$factory = $this->container->get('sylius.factory.product');
$manager = $this->container->get('sylius.manager.product');
$product = $factory->createNew();
$product
  ->setName('FOO - '.$title);
$product->setCode($this->generateRandomString());
$product->setSlug($this->generateRandomString());
$manager->persist($product);
$manager->flush(); 

当我尝试附上价格时,会出现错误:

  

尝试调用名为" setPrice"的未定义方法。类" Sylius \ Component \ Core \ Model \ Product"。

对于没有价格的产品,我甚至无法在管理界面中设置价格,没有字段。

enter image description here

我认为它与"简单产品" VS"可配置产品"差异。当我从管理界面创建简单产品时,我可以修改价格:

enter image description here

如何以编程方式创建简单产品而非可配置产品

1 个答案:

答案 0 :(得分:0)

快速浏览一下Sylius源代码,看起来定价是在ChannelPricing类中管理的。因此,您需要创建一个ChannelPricing对象。

更多信息: http://docs.sylius.org/en/latest/book/products/pricing.html