В моя main-local.php имам следния код:
"assetManager" => [
"converter" => [
"class" => "yiiwebAssetConverter",
]
]
Сега искам да замени по подразбиране AssetConverter с моя собствен конвертор. Когато променям класа на customwebAssetConverter
не намира класа.
Създадох директория под vendorcustomweb
с AssetConverter.php
файл и пространство от имена customweb
.
Къде трябва да поставя собствения си файл AssetConverter? И трябва ли да регистрирам някой доставчик, за да може да се намери пространството от имена?
Отговори:
0 за отговор № 1Вашето пространство за имена на клас е неправилно и също vendor
директория за пакети за композитори. Например създайте components
или папка в главната папка на проекта. В този случай пространството за имена на вашия клас трябва да хареса това (свързано с основния шаблон на приложение):
namespace appcomponents;
След това го включете в config:
"assetManager" => [
"converter" => [
"class" => "appcomponentsAssetConverter",
]
]
Също така, вашият AssetConverter
трябва да се разширява yiiwebAssetConverter
в над случай ще получите грешка, какъв клас не е намерен.