Shopware 6: добавление пользовательских данных базы данных в веб-интерфейс - PullRequest
0 голосов
/ 19 февраля 2020

Здравствуйте, я создал свой собственный магазин 6 Плагин. Теперь я хочу добавить данные из своей таблицы базы данных на страницу продукта. Мой подписчик работает. Но когда я хочу добавить пользовательские данные базы данных на страницу продукта. В моем подписчике на продукты я не могу использовать

$this->get('product_reservation.repository');

, потому что «get» не работает с подписчиком.

Как я могу решить мою проблему?

Ответы [ 2 ]

1 голос
/ 20 февраля 2020

Введите его через функцию класса __constructor.

0 голосов
/ 21 февраля 2020

Спасибо vstelmakakh и Халед Алам, но как это работает с конструктором? Я не знаю, как реализовать это в моем подписчике.

Я только хочу получить данные из моей таблицы "product_reservation" в виде внешнего интерфейса (веточка. html).

Вот весь код моего подписчика:

<?php declare(strict_types=1);

namespace ProduktReservieren\Subscriber;

use Doctrine\DBAL\Connection;
use Shopware\Core\Content\Product\ProductEvents;
use Shopware\Core\Framework\DataAbstractionLayer\Event\EntityLoadedEvent;
use Shopware\Core\Framework\DataAbstractionLayer\EntityRepositoryInterface;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;

use Shopware\Bundle\MediaBundle\MediaService;
use Shopware\Components\CSRFWhitelistAware;
use Shopware\Components\Logger;
use Shopware\Components\Model\ModelManager;
use Shopware\Models\Customer\Address;
use Shopware\Models\Customer\Customer;

class Reservieren implements EventSubscriberInterface
{
    public static function getSubscribedEvents(): array
    {
        return[
            ProductEvents::PRODUCT_LOADED_EVENT => 'onProductsLoaded'
        ];
    }


    public function onProductsLoaded(EntityLoadedEvent $event)
    {
        echo 'Subscriber works!';

    }
}
...