Конфигурация пакета продуктов Sylius
Я пытаюсь интегрировать Sylius набора продуктов в мой существующий проект на Symfony. У него уже есть настроенная доктрина.
Это ошибка, которую я получаю:
[SymfonyComponentConfigDefinitionExceptionInvalidConfigurationException]
The child node "driver" at path "sylius_attribute" must be configured.
Любые идеи, что вызывает это? Я последовал инструкции сразу же, не делая никаких других установок sylius.
Http://docs.sylius.org/en/latest/bundles/SyliusProductBundle/installation.html
Мне пришлось изменить версию пакета доктрин в моем композитор.JSON файл, чтобы разрешить
Композитор требует "sylius / product-bundle"
Для успешного выполнения без ошибок. Я изменил версию с 1.2.* to
"доктрина / доктрина-связка": "1.3.*"
Также после того, как composer установил этих ребят, я добавил в свой конфиг следующее.yml-файл
sylius_product:
driver: doctrine/orm
classes:
product:
model: SyliusBundleCoreBundleModelProduct
controller: SyliusBundleCoreBundleControllerProductController
repository: SyliusBundleCoreBundleRepositoryProductRepository
stof_doctrine_extensions:
default_locale: es_us
translation_fallback: true
orm:
default:
tree: true
Изначально я получал следующую ошибку:
[Exception]
Missing parameter sylius.translation.default.mapping. Default translation mapping must be defined!
Немного порыскав вокруг, я добавил нижеприведенный фрагмент к конфиг.yml-файл
sylius_translation:
default_mapping:
translatable:
field: translations
currentLocale: currentLocale
fallbackLocale: fallbackLocale
translation:
field: translatable
locale: locale
Уже существующий ранее в моей конфигурации.файл yml был:
doctrine:
dbal:
driver: "%database_driver%"
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
charset: UTF8
orm:
auto_generate_proxy_classes: "%kernel.debug%"
auto_mapping: true
Я ничего не менял в этих настройках.
Что я здесь делаю не так или чего-то не хватает? Любая помощь будет очень признательна.
Спасибо!
EDIT
Я попытался добавить все следующие пункты:
sylius_attribute:
driver: doctrine/orm
sylius_variation:
driver: doctrine/orm
sylius_archetype:
driver: doctrine/orm
Теперь я получаю следующую ошибку:
[InvalidArgumentException]
The class sylius.model.product_archetype.class does not exist.
Я добавил соответствующий файл в AppKernel с еще нет удача!
new SyliusBundleAttributeBundleSyliusArchetypeBundle(),
И затем изменил его на:
new SyliusBundleArchetypeBundleSyliusArchetypeBundle(),
Установка Sylius была тихим стрессом до сих пор: (
2 ответов:
Я обновил документы для ProductBundle:
В
composer.jsonвам нужно будет добавить следующие строки:"require": { ... "sylius/locale-bundle": "0.13.*", "sylius/product-bundle": "0.13.*" ... }В
app/AppKernel.php:new FOS\RestBundle\FOSRestBundle(), new JMS\SerializerBundle\JMSSerializerBundle($this), new Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle(), new WhiteOctober\PagerfantaBundle\WhiteOctoberPagerfantaBundle(), new Sylius\Bundle\ArchetypeBundle\SyliusArchetypeBundle(), new Sylius\Bundle\AttributeBundle\SyliusAttributeBundle(), new Sylius\Bundle\ProductBundle\SyliusProductBundle(), new Sylius\Bundle\LocaleBundle\SyliusLocaleBundle(), new Sylius\Bundle\ResourceBundle\SyliusResourceBundle(), new Sylius\Bundle\TranslationBundle\SyliusTranslationBundle(), new Sylius\Bundle\VariationBundle\SyliusVariationBundle(), new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),В
config.yml:parameters: sylius.locale: "%locale%" sylius_archetype: classes: product: subject: Sylius\Component\Product\Model\Product attribute: Sylius\Component\Product\Model\Attribute option: Sylius\Component\Product\Model\Option archetype: model: Sylius\Component\Product\Model\Archetype repository: Sylius\Bundle\ResourceBundle\Doctrine\ORM\TranslatableEntityRepository translatable: targetEntity: Sylius\Component\Product\Model\ArchetypeTranslation archetype_translation: model: Sylius\Component\Product\Model\ArchetypeTranslation sylius_attribute: driver: doctrine/orm sylius_product: driver: doctrine/orm sylius_locale: driver: doctrine/orm sylius_translation: default_mapping: translatable: field: translations currentLocale: currentLocale fallbackLocale: fallbackLocale translation: field: translatable locale: locale sylius_variation: driver: doctrine/orm stof_doctrine_extensions: orm: default: sluggable: true timestampable: trueТеперь вы можете успешно запустить обновление схемы
$ php app/console doctrine:schema:update --dump-sqlЕсли вы удовлетворены, выполните:
$ php app/console doctrine:schema:update --forceОбновление: эта конфигурация будет сломана при обновлении до 0.14 (текущая выпущенная версия-0.13).
Comments