【问题标题】:Symfony 2 - sylius - doctrine is not availableSymfony 2 - sylius - 学说不可用
【发布时间】:2016-04-12 15:05:58
【问题描述】:

作曲家更新后我有大问题,

实际上,我正在 symfony2 (2.8.3) 上与 sylius 电子商务合作。

不久前我做了 composer update 并且我的 symfony 版本从 2.8.3 更新到 2.8.4-dev 并且我的 sylius 电子商务项目不再工作了,实际上我收到了这个错误消息:

在第 97 行的 SyliusWebBundle:Frontend:layout.html.twig 中呈现模板期间引发了异常(“Doctrine 不可用。”)。

SYLIUS 版本为 v0.17.0

请帮帮我..

谢谢

【问题讨论】:

  • 我遇到了同样的问题,我的作曲家将 symfony 设置为 2.8.3,但今天更新为 2.8.4-dev。也使用 sylius。

标签: symfony doctrine composer-php sylius


【解决方案1】:

这是 Sylius 0.17 版本中的 known bug(我会在接下来的几天内亲自修复)。

与此同时,您可以通过手动启用 Doctrine PHPCR 来修复它:

app/config/config.yml:

cmf_core:
    persistence:
        phpcr:
            enabled: true

另一个临时修复方法是打开 src/Sylius/Bundle/WebBundle/Resources/Frontend/layout.html.twig 并删除 {% block slideshow_sidebar %}{% endblock %} 和接下来的 ~16 行,但不包括 {% endblock %}

         {# delete these lines only #}
            {% block slideshow_sidebar %}{% endblock %}

            {% set links = cmf_children(cmf_find('/cms/pages')) %}
            {% if links is not empty %}
            <h2>{{ 'sylius.ui.links'|trans }}</h2>
            <ul>
              {% for link in links %}
                {% if cmf_is_linkable(link) %}
                    <li>
                      <a href="{{ path(link) }}">{{ link.title|striptags }}</a>
                    </li>
                {% endif %}
              {% endfor %}
            </ul>
            {% endif %}

【讨论】:

  • 我宁愿不安装 symfony-cmf,因为我自己不使用它,对 Sylius 真的有必要吗?.. 似乎 Sylius 与太多的依赖关系。
  • 无论如何都会安装它(通过 Composer),但您可以通过编辑主页模板或覆盖它来避免使用它 - 请参阅更新后的答案。
  • @AdamElsodaney 伙计,非常感谢您的建议和解决方案,临时解决方案对我有用,但我想问您,如果我想要您的解决方案编号 1(编辑 app/config/ config.yml 文件),我应该把这段代码放在哪里? “cmf_core:持久性:phpcr:启用:真”
  • @billy_56 不用担心。是的,你可以把它放在你喜欢的任何地方,文件底部是更明显的选择,除非已经有 cmf_core 的配置,但我对此表示怀疑
  • @AdamElsodaney 非常感谢伙计,祝您有美好的一天! :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-11
  • 1970-01-01
  • 2012-06-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多