【问题标题】:Install Sonata Dashboard bundle安装 Sonata Dashboard 包
【发布时间】:2018-10-24 13:29:09
【问题描述】:

我想安装 Sonata Dashboard 包,所以我按照these 的步骤操作。

安装和配置后出现错误:

编译错误:Application\Sonata\DashboardBundle\Entity\Dashboard::getId() 的声明必须与 Sonata\DashboardBundle\Model\Dashboard::getId() 兼容:?int

我使用 Symfony 3.4、php 7.2 和 composer.json 看起来像:

"require": {
    "php": ">=5.5.9",
    "doctrine/doctrine-bundle": "^1.6",
    "doctrine/orm": "^2.5",
    "enqueue/amqp-lib": "^0.8.23",
    "friendsofsymfony/rest-bundle": "^2.3",
    "friendsofsymfony/user-bundle": "^2.1",
    "incenteev/composer-parameter-handler": "^2.0",
    "jms/serializer-bundle": "^2.3",
    "liip/monitor-bundle": "^2.6",
    "nelmio/api-doc-bundle": "^3.2",
    "sensio/distribution-bundle": "^5.0.19",
    "sensio/framework-extra-bundle": "^5.0.0",
    "sonata-project/admin-bundle": "^3.34",
    "sonata-project/block-bundle": "^3.12",
    "sonata-project/cache": "1.x-dev",
    "sonata-project/cache-bundle": "2.4",
    "sonata-project/classification-bundle": "^3.6",
    "sonata-project/core-bundle": "^3.9",
    "sonata-project/dashboard-bundle": "^0.3.0",
    "sonata-project/datagrid-bundle": "2.3",
    "sonata-project/doctrine-extensions": "^1.0",
    "sonata-project/doctrine-orm-admin-bundle": "^3.5",
    "sonata-project/easy-extends-bundle": "^2.5",
    "sonata-project/formatter-bundle": "^3.4",
    "sonata-project/google-authenticator": "^2.1",
    "sonata-project/media-bundle": "^3.12",
    "sonata-project/news-bundle": "3.4",
    "sonata-project/notification-bundle": "^3.5",
    "sonata-project/seo-bundle": "^2.5",
    "sonata-project/user-bundle": "^4.1",
    "symfony/monolog-bundle": "^3.1.0",
    "symfony/polyfill-apcu": "^1.0",
    "symfony/swiftmailer-bundle": "^2.6.4",
    "symfony/symfony": "3.4.*",
    "symfony/templating": "3.4.8",
    "twig/twig": "^1.0||^2.0"
},

有什么想法可能是错的吗?

【问题讨论】:

    标签: php symfony sonata-admin sonata


    【解决方案1】:

    看起来生成的实体错过了返回类型提示……可能是a bug in Sonata Easy Extends bundle。您可以通过查找和修改Application\Sonata\DashboardBundle\Entity\Dashboard来添加类型提示

    【讨论】:

    • 现在我将 Dashboard.php 中的函数修改为:public function getId(): ?int {return $this->id;}。现在一切正常,除了当我转到 URL:admin/sonata/dashboard/dashboard/create 时,它​​会引发另一个错误:类型错误:返回值 Sonata\DashboardBundle\Model\Dashboard::getEnabled() 必须是boolean 类型,返回 null
    • 听起来像另一个错误,这里应该有一个默认值:github.com/sonata-project/SonataDashboardBundle/blob/master/src/… 您可以覆盖设置器以将其设置为您认为应该是默认值的任何值,true 或 false。
    猜你喜欢
    • 2018-07-03
    • 2012-01-18
    • 2018-07-04
    • 1970-01-01
    • 1970-01-01
    • 2018-01-16
    • 2017-05-19
    • 2015-02-11
    • 2020-10-24
    相关资源
    最近更新 更多