Symfony 4 上的 Twig Gravatar
Twig Gravatar on Symfony 4
我是 Symfony 的新手,我在将 'ry167/twig-gravatar' 包集成到我的项目。
首先,我做了:
$ composer require ry167/twig-gravatar 3.0.0
在我修改我的 services.yaml 之后,它看起来像这样:
services:
_defaults:
autowire: true # Automatically injects dependencies in your services.
autoconfigure: true # Automatically registers your services as commands, event subscribers, etc.
App\:
resource: '../src/*'
exclude: '../src/{DependencyInjection,Entity,Migrations,Tests,Kernel.php}'
App\Controller\:
resource: '../src/Controller'
tags: ['controller.service_arguments']
twig.extension.gravatar:
class: \TwigGravatar
arguments:
$default: ~ e.g. 'monsterid'
$size: ~ e.g. 50
$filterPrefix: ~ e.g. 'foo'
$rating: ~ e.g. 'x'
$useHttps: true
tags:
- { name: twig.extension }
最后,我的观点是:
<p>{{ 'example@example.com'|grAvatar }}</p>
但是我得到了这个错误:
无效服务 "twig.extension.gravatar": class "Twig_Extension" 加载时未找到 "TwigGravatar"
有什么想法吗?我不明白我的问题出在哪里...
您可能使用 Twig 3.* 其中 removed all PSR-0 classes(带下划线)。
ry167/twig-gravatar
的下一版本修复了该问题。
已经有 release candidate.
选项 1:等待下一个稳定版本
如果你想等待稳定版本,那么暂时在你的composer.json
中添加一个conflict
块以使用3.0之前的最新Twig版本:
{
...
"require": {
...
"ry167/twig-gravatar": "^3.0.0",
...
},
"conflict": {
"twig/twig": ">=3.0"
}
}
运行 composer update
之后让 Composer 完成确定依赖关系和降级 Twig 版本的工作。
您可以在发布 4.0 版时删除 conflict
并将依赖项更改为 ^4.0.0
。
选项 2:使用发布候选
如果你想马上使用新版本,你必须告诉 composer 非稳定版本可以使用 stability flags。
composer require ry167/twig-gravatar "^4.0.0@RC"
我是 Symfony 的新手,我在将 'ry167/twig-gravatar' 包集成到我的项目。
首先,我做了:
$ composer require ry167/twig-gravatar 3.0.0
在我修改我的 services.yaml 之后,它看起来像这样:
services:
_defaults:
autowire: true # Automatically injects dependencies in your services.
autoconfigure: true # Automatically registers your services as commands, event subscribers, etc.
App\:
resource: '../src/*'
exclude: '../src/{DependencyInjection,Entity,Migrations,Tests,Kernel.php}'
App\Controller\:
resource: '../src/Controller'
tags: ['controller.service_arguments']
twig.extension.gravatar:
class: \TwigGravatar
arguments:
$default: ~ e.g. 'monsterid'
$size: ~ e.g. 50
$filterPrefix: ~ e.g. 'foo'
$rating: ~ e.g. 'x'
$useHttps: true
tags:
- { name: twig.extension }
最后,我的观点是:
<p>{{ 'example@example.com'|grAvatar }}</p>
但是我得到了这个错误:
无效服务 "twig.extension.gravatar": class "Twig_Extension" 加载时未找到 "TwigGravatar"
有什么想法吗?我不明白我的问题出在哪里...
您可能使用 Twig 3.* 其中 removed all PSR-0 classes(带下划线)。
ry167/twig-gravatar
的下一版本修复了该问题。
已经有 release candidate.
选项 1:等待下一个稳定版本
如果你想等待稳定版本,那么暂时在你的composer.json
中添加一个conflict
块以使用3.0之前的最新Twig版本:
{
...
"require": {
...
"ry167/twig-gravatar": "^3.0.0",
...
},
"conflict": {
"twig/twig": ">=3.0"
}
}
运行 composer update
之后让 Composer 完成确定依赖关系和降级 Twig 版本的工作。
您可以在发布 4.0 版时删除 conflict
并将依赖项更改为 ^4.0.0
。
选项 2:使用发布候选
如果你想马上使用新版本,你必须告诉 composer 非稳定版本可以使用 stability flags。
composer require ry167/twig-gravatar "^4.0.0@RC"