首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sylius\Component\Shipping\Model\ShippingMethodTranslation必须与Sylius\Component\Shipping\Model\ShippingMethod::createTranslation():兼容

Sylius\Component\Shipping\Model\ShippingMethodTranslation必须与Sylius\Component\Shipping\Model\ShippingMethod::createTranslation():兼容
EN

Stack Overflow用户
提问于 2017-11-22 18:37:20
回答 1查看 46关注 0票数 0

我正在学习教程:“如何定制可翻译的模型?”在Sylius文档中。

当我运行命令: php bin/console doctrine:migrations:diff时,我得到了这个错误:

致命错误: AppBundle\Entity\ShippingMethod::createTranslation():Sylius\Component\Shipping\Model\ShippingMethodTranslation的声明必须与第8行C:\wamp64\www\acme7\src\AppBundle\Entity\ShippingMethod.php中的Sylius\Component\Shipping\Model\ShippingMethod::createTranslation():Sylius\Component\Shipping\Model\ShippingMethodTranslationInterface兼容

下面是我的类:

代码语言:javascript
复制
<?php

namespace AppBundle\Entity;

use Sylius\Component\Core\Model\ShippingMethod as BaseShippingMethod;
use Sylius\Component\Shipping\Model\ShippingMethodTranslation;

class ShippingMethod extends BaseShippingMethod
{
    /**
     * @var string
     */
     private $estimatedDeliveryTime;

    /**
     * @return string
     */
    public function getEstimatedDeliveryTime(): string
    {
        return $this->estimatedDeliveryTime;
    }

    /**
     * @param string $estimatedDeliveryTime
     */
    public function setEstimatedDeliveryTime(string $estimatedDeliveryTime): void
    {
         $this->estimatedDeliveryTime = $estimatedDeliveryTime;
    }

    /**
     * {@inheritdoc}
     */
     protected function createTranslation(): ShippingMethodTranslation
     {
    return new ShippingMethodTranslation();
     }
}

有没有办法解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2017-11-23 00:31:17

我从sylius的松弛中得到了一些帮助。

因为我使用的是Sylius v1.0.4

我不得不替换:

代码语言:javascript
复制
use Sylius\Component\Shipping\Model\ShippingMethodTranslation;

通过

代码语言:javascript
复制
use Sylius\Component\Shipping\Model\ShippingMethodTranslationInterface;

代码语言:javascript
复制
/**
 * {@inheritdoc}
 */
  protected function createTranslation(): ShippingMethodTranslation
  {
        return new ShippingMethodTranslation();
}

通过

代码语言:javascript
复制
/**
 * {@inheritdoc}
 */
protected function createTranslation(): ShippingMethodTranslationInterface {
    return new ShippingMethodTranslation();
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47432505

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档