# Manufacturer Repository erstellen im Controller und Daten an Manufacturer Template weitergeben

**URL:** <https://forum.shopware.com/t/manufacturer-repository-erstellen-im-controller-und-daten-an-manufacturer-template-weitergeben/92503>\
**Category:** Shopware 6 (German)\
**Tags:** programming\
**Created:** [21. Januar 2022 um 09:06 UTC](https://forum.shopware.com/t/manufacturer-repository-erstellen-im-controller-und-daten-an-manufacturer-template-weitergeben/92503 "2022-01-21T09:06:04Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![anon50212062](https://avatars.discourse-cdn.com/v4/letter/a/d26b3c/32.png) [@anon50212062](https://forum.shopware.com/u/anon50212062)\
**Post date:** [21. Januar 2022 um 09:06 UTC](https://forum.shopware.com/t/manufacturer-repository-erstellen-im-controller-und-daten-an-manufacturer-template-weitergeben/92503/1 "2022-01-21T09:06:04Z")

</div>

Servus!

Ich hab ein Problem. Ich weiß nicht wie ich ein ManufacturerRepository erstelle.  
Ich hab einen ManufacturerPage Controller, der die Daten für mich rendert.  
Von hier aus soll der Controller die ID, die über die URL geliefert wird, im ManufacturerRepository suchen und dem Template übergeben.

```php
<?php declare(strict_types=1);

namespace [myName]\Storefront\Controller;

use Shopware\Core\Framework\Routing\Annotation\RouteScope;
use Shopware\Core\System\SalesChannel\SalesChannelContext;

use Shopware\Core\Framework\DataAbstractionLayer\EntityRepositoryInterface;
use Shopware\Core\Framework\Context;
use Shopware\Core\Framework\DataAbstractionLayer\Search\Criteria;

use Shopware\Core\System\SalesChannel\Entity\SalesChannelRepositoryInterface;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Shopware\Core\Framework\DataAbstractionLayer\EntityRepository;

use Shopware\Storefront\Controller\StorefrontController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Shopware\Storefront\Page\Navigation\NavigationPageLoaderInterface;
use Shopware\Storefront\Pagelet\Menu\Offcanvas\MenuOffcanvasPageletLoaderInterface;
use Shopware\Core\Framework\Routing\Annotation\Since;
use Shopware\Storefront\Framework\Cache\Annotation\HttpCache;

/**
 * @RouteScope(scopes={"storefront"})
 */
class WinzerpageController extends StorefrontController
{
    private NavigationPageLoaderInterface $navigationPageLoader;
    private MenuOffcanvasPageletLoaderInterface $offcanvasLoader;
    private string $manufacturerId;
    private string $manufacturerName;
   

    public function __construct(
        NavigationPageLoaderInterface $navigationPageLoader,
        MenuOffcanvasPageletLoaderInterface $offcanvasLoader 
    )
    {
        $this->navigationPageLoader = $navigationPageLoader;
        $this->offcanvasLoader = $offcanvasLoader;
    }

    /**
     * @Route("/winzer/{manufacturerName}/{manufacturerId}", name="frontend.winzer.winzer", options={"seo"="true"}, methods={"GET"})
     */
    public function renderOneWinzer(Request $request,
                                    SalesChannelContext $context,
                                    string $manufacturerId
    ): ?Response
    {
        $this->manufacturerId = $manufacturerId;
        $page = $this->navigationPageLoader->load($request, $context);
        
        /**
         * WinzerRepository erstellen
         */
      
        return $this->renderStorefront('@VinoshopTheme/storefront/page/winzer/winzerpage.html.twig',
            ['page' => $page, 'manufacturerId' => $manufacturerId],
        );
    }
}

```

```auto
 <service id="[myName]\Storefront\Controller\WinzerpageController" public="true">
            <argument type="service" id="Shopware\Storefront\Page\Navigation\NavigationPageLoader"/>
            <argument type="service" id="Shopware\Storefront\Pagelet\Menu\Offcanvas\MenuOffcanvasPageletLoader"/>
            <argument type="service" id="Shopware\Core\Content\Seo\SeoUrlPlaceholderHandlerInterface"/>
            <call method="setContainer">
                <argument type="service" id="service_container"/>
            </call>
            <argument type="service" id="sales_channel.product.repository"/>
            <argument type="service" id="product_manufacturer.repository"/>
 </service>

```

---

<div class="post-metadata">

**Author:** ![Max\_Shop](https://avatars.discourse-cdn.com/v4/letter/m/58f4c7/32.png) [@Max\_Shop](https://forum.shopware.com/u/Max_Shop)\
**Post date:** [21. Januar 2022 um 10:48 UTC](https://forum.shopware.com/t/manufacturer-repository-erstellen-im-controller-und-daten-an-manufacturer-template-weitergeben/92503/2 "2022-01-21T10:48:21Z")

</div>

Genau gleich, wie jedes andere Repository auch.

Jedes argument, dass du in deiner service.xml aufnimmst, musst du in deinem \_\_construct(argument, argument, …) in entsprechender Reihenfolge berücksichtigen.
