Php Sylius自定义模型不起作用

Php Sylius自定义模型不起作用,php,frameworks,symfony4,sylius,sylius-1.3,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

这是我的类文件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;
   }

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

就像sylius定制模型一样,一切正常,但不起作用

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

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

另外,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 {

  • 类型:原则映射中的mappedSuperclass
  • 确保
    AppBundle
    扩展
    AbstractResourceBundle
  • 确保
    AppBundle
    具有
    protected$mappingFormat=ResourceBundleInterface::MAPPING\u YAML

  • 你使用哪种版本的Sylius?请说得更清楚些。“不工作”到底是什么?我使用的是sylius 1.3版本。?sylius自定义扩展模型不起作用。路径与src\Resources\config\doctor相同。但不起作用。有错误消息吗?
    php-bin/console-debug:config-sylius\u-addressing
    的结果是什么?当我运行这个命令“php-bin/console-debug:config-sylius\u-addressing”时,显示的国家/地区类是…国家/地区:类:模型:sylius\Component\addressing\model\country接口:Sylius\Component\Addressing\Model\CountryInterface controller:Sylius\Bundle\ResourceBundle\controller\ResourceController工厂:Sylius\Component\Resource\factory\factory表单:Sylius\Bundle\AddressingBundle\form\Type\CountryType请尝试在Country.php上添加注释(请参阅我的更新,上面的标签为//2018-12-18)问题解决了吗?我发现您的配置文件位置似乎错误。您应该将其放在packages文件夹下:
    config\packages\\u sylius.yaml
    sylius_addressing:
       resources:
           country:
               classes:
                   model: App\Entity\Country
    
    <?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 {