Sylius定制模型无法正常工作

时间:2018-11-19 07:36:37

标签: php frameworks symfony4 sylius sylius-1.3

这是我的课程文件Country.php

<?php

namespace App\Entity;

use Sylius\Component\Addressing\Model\Country as BaseCountry;

class Country extends BaseCountry {

/**
 * @var bool
 */
private $flag;

/**
 * @return bool|null
 */
public function getFlag(): ?bool {
    return $this->flag;
}

/**
 * @param bool $flag
 */
public function setFlag(bool $flag): void {
    $this->flag = $flag;
   }

}

这是我的orm文件。 AppBundle / Resources / config / doctrine / Country.orm.yml

App\Entity\Country:
   type: entity
   table: sylius_country
   fields:
       flag:
           type: boolean
           nullable: true

这是我的配置文件。 config / _sylius.yml

sylius_addressing:
   resources:
       country:
           classes:
               model: App\Entity\Country

像sylius自定义模型一样可以,但是不起作用。

2 个答案:

答案 0 :(得分:0)

  

这是我的orm文件。 AppBundle / Resources / config / doctrine / Country.orm.yml

对于v1.3,应将orm文件放在src\Resources\config\doctrine

另外,php bin/console debug:config sylius_addressing的结果是什么?

// 2018-12-18

也许尝试:

<?php

namespace App\Entity;

use Doctrine\ORM\Mapping as ORM;
use Sylius\Component\Addressing\Model\Country as BaseCountry;

/**
 * Class Country
 * @package App\Entity
 * @ORM\Table(name="sylius_country")
 * @ORM\Entity
 */
class Country extends BaseCountry {

答案 1 :(得分:0)

  1. type: mappedSuperclass在原则映射中
  2. 确保AppBundle扩展了AbstractResourceBundle
  3. 确保AppBundleprotected $mappingFormat = ResourceBundleInterface::MAPPING_YAML;