Twig 装载机使用 October CMS 粉碎

Twig loader crushes with October CMS

当我开始新的 10 月项目时,它说:

Class System\Twig\Loader contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Twig_LoaderInterface::getSourceContext) /home/doctor/web/paintshop/modules/system/twig/Loader.php line 82

有人遇到过这样的问题吗?我的php版本是7,在apache中启用了php7 mod,而php 5.6 mod是禁用的。谢谢!

大多数情况下,如果您安装的是全新的 OctoberCMS,那么它不会是最新的更新。

转到 Config/Cms.php 并将 edgeUpdates 设置为 true 并尝试从后端更新应用程序。

如果您仍然遇到问题,您可以尝试切换到从 dev 分支拉取,而不是通过将 composer.json 的 require 属性 设置为库的 dev 分支,然后 运行composer update

"require": {
    "php": ">=5.5.9",
    "october/rain": "dev-develop",
    "october/system": "dev-develop",
    "october/backend": "dev-develop",
    "october/cms": "dev-develop",
    "laravel/framework": "5.1.*",
    "wikimedia/composer-merge-plugin": "dev-master",
    "guzzlehttp/guzzle": "^6.2"
},

问题的原因是 OctoberCMS 库 composer.json 中的 Twig 依赖项最近更新为包含 v2.0 库尚未正式支持,因为 Twig v2 不支持低于 PHP 7 而 10 月仍然如此。几个小时前刚刚恢复到 Twig v1.30,因此您可能需要从库的开发分支更新以提取您的更改。