• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Symfony 4 - Tworzenie i używanie szablonów i dodawanie css/js

VPS Starter Arubacloud
0 głosów
2,713 wizyt
pytanie zadane 1 stycznia 2018 w PHP przez Kerdi26 Użytkownik (640 p.)
Cześć, ostatnio zacząłem się uczyć symfony 4 albo przynajmniej staram się to robić. I mam problem bo z samej oficjalnej dokumentacji nie wiele rozumiem i doszedłem do poziomu, że wiem jak w ruterze pisać odpowiednie ścieżki do kontrolerów, tam zwracać odpowiedzi poprzez obiekt response i tu się zatrzymałem bo nie wiem jak mam importować do takiego kontrolera szablony, które mam przykładowo w katalogu templates w głównym folderze aplikacji. I jak potem przez obiekt response, lub w inny sposób zwracać jako odpowiedź te szablony, oraz jak w samych szablonach przez funkcję asset odwoływać się do własnych cssów i jsów. I jeśli ktoś by mógł to prosiłbym o dokładne wytłumaczenie tych rzeczy krok po kroku, z góry dzięki

1 odpowiedź

+2 głosów
odpowiedź 1 stycznia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)

bo nie wiem jak mam importować do takiego kontrolera szablony, które mam przykładowo w katalogu templates w głównym folderze aplikacji. I jak potem przez obiekt response, lub w inny sposób zwracać jako odpowiedź te szablony,

Coś słabo dokumentację w takim razie studiujesz, bo to jest pokazane już na samym początku :) 

http://symfony.com/doc/current/page_creation.html#rendering-a-template - tu jest wszystko pokazane, wystarczy zwrócić wynik metody $this->render(). Do render() podajesz nazwę tego szablonu (bez ścieżki bo ta zdefiniowana jest w configach), dalej ewentualne parametry przekazywane do widoku.

Oczywiście zakładam, że masz już zainstalowanego bundle z Twigiem i dziedziczysz po bazowym kontrolerze, wtedy będziesz miał w każdym metodę render().

jak w samych szablonach przez funkcję asset odwoływać się do własnych cssów i jsów

Umieszczasz taki własny asset w katalogu public i względem niego podajesz ścieżkę do pliku. Czyli gdy umieścisz np. plik CSS bezpośrednio w katalogu public wystarczy że dasz asset('plik.css'), jeśli zrobisz podkatalog np. css/ to będzie to asset('css/plik.css'). O resztę dba Symfony.

komentarz 1 stycznia 2018 przez Kerdi26 Użytkownik (640 p.)
Wielkie dzięki teraz wszystko rozumiem. Tylko nie wiem jeszcze jak w pliku css, odwoływać się do jakichś zasobów np obrazu.
komentarz 1 stycznia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Nie da się. Plik CSS jest przecież zwracany wprost z serwera w takim stanie jakim go masz, nie przechodzi przez PHP, ani przez nic, co mogłoby zmienić jego zawartość. Musiałbyś kombinować ze skierowaniem wszystkich requestów na Symfony i w routingu dla plików CSS kierować na jakąś akcję, która szukała by określonego pliku, wykonywała kod PHP/Twiga w nim i dopiero zwracała... Moim zdaniem nieopłacalna zabawa.
komentarz 1 stycznia 2018 przez Kerdi26 Użytkownik (640 p.)
edycja 1 stycznia 2018 przez Kerdi26
A możesz mi jeszcze powiedzieć jak w plikach php odwoływać się do css i js? I czy tworząc szablony w php trzeba coś doinstalowywać lub coś się zmienia?
komentarz 1 stycznia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Co to znaczy, bo nie za bardzo rozumiem?

W plikach PHP do CSS i JS mając szablony w Twigu raczej nie ma sensu się odwoływać, ale jeśli potrzebowałbyś to: https://symfony.com/doc/current/components/asset.html tylko dalej nie wiem czy dobrze zrozumiałem.

Edit: a, czyli chcesz szablony całkowicie bez Twiga? https://symfony.com/doc/current/templating/PHP.html
komentarz 4 stycznia 2018 przez Kerdi26 Użytkownik (640 p.)
Dzięki, tym razem z dokumentacją zrozumiałem wszystko i szablony w php mam opanowane, cała warstwa widoku strony którą przepisywałem jest ok, a teraz chciałbym zapytać jak wykonywać operacje na bazie danych i tworzyć skrypty php, czy stworzenie katalogu model i tam przechowywanie plików php robiących takie rzeczy a potem za pomocą use dodawanie ich do ruterów i tam wykonywanie operacji na tych plikach to właściwy sposób?
1
komentarz 4 stycznia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Pytasz dalej w kontekście Symfony? Routing wywołuje konkretną metodę kontrolera, nie wiem skąd miałby się tam wziąć jakiś model. Z kontrolera wykonujesz odpowiednie akcje - jeśli chcesz to wyciągnąć z kontrolera (co jest dobrą praktyką) to możesz zrobić jakieś serwisy, czy jak to sobie nazywasz modele, i w nich operować danymi i wykonywać konkretne akcje. Ale dalej samo wejście powinno być do metody kontrolera jak i metoda ta powinna coś zwrócić.
komentarz 8 stycznia 2018 przez Kerdi26 Użytkownik (640 p.)
Jakbyś miał czas to mam kilka kolejnych pytań, jeśli dobrze rozumiem to wysyłając formularz pod jakiś adres informacje z niego powinny przejść przez kontroler i tam można wykonywać na nich operację, więc jak odebrać dane z tablicy post, lub get? I czy jest możliwość w jakimś pliku zrobić sobie połączenie z bazą danych w mysqli potem to importować do kontrolera i z tego korzystać?
1
komentarz 8 stycznia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Tak, w kontrolerze możesz na tym wykonać jakieś operacje (docelowo raczej logiki z kontrolera się pozbywa, ale na początek możesz się tym bawić w kontrolerach). Dane przesłane metodą GET czy POST możesz pobierać zgodnie z informacjami tutaj: https://symfony.com/doc/current/introduction/http_fundamentals.html#symfony-request-object ale warto wiedzieć, że jest też cały komponent do formularzy, dzięki któremu możemy je łatwo tworzyć, odczytywać wartości, a nawet generować na widoku: https://symfony.com/doc/current/forms.html

Jeśli chodzi o bazę danych to moim zdaniem nie ma sensu brać jakiegoś mysqli, gdy masz pod ręką Doctrine: https://symfony.com/doc/current/doctrine.html
komentarz 11 stycznia 2018 przez Kerdi26 Użytkownik (640 p.)
A jak wygląda sytuacja z sesją, bo w skrypcie logowania, gdy ktoś się zalogował to tworze zmienną $_SESSION['zalogowany'] jako dowód na bycie zalogowanym i na początku to działa, ale po kliknięciu w jakąś podstronę ta zmienna znika. No i gdy chce wywołać jakiś kontroler w celu np zalogowania się to mogę response przekierować pod jakąś inną podstronę, niż tą na którą  został wywołany?
1
komentarz 11 stycznia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
W Symfony pisanie własnego systemu logowania nie ma sensu, jest gotowy zintegrowany: https://symfony.com/doc/current/security.html
komentarz 28 stycznia 2018 przez Kerdi26 Użytkownik (640 p.)
A gdy chcę opublikować jakąś stronę, trzeba coś zmieniać, żeby pod adresem strony nie wyskakiwała lista folderów?
2
komentarz 28 stycznia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)

Ustawić root directory serwera na katalog public. Dodatkowo trzeba też skierować wszystkie wywołania, które nie są faktycznymi plikami, na index.php - jeśli korzystasz z Apache to może być przez .htaccess (jeśli go nie masz to spróbuj composer require symfony/apache-pack), jeśli z innego serwera to odpowiednio jak opisano tutaj.

komentarz 28 stycznia 2018 przez Kerdi26 Użytkownik (640 p.)
A mógłbyś mi dokładniej wyjaśnić jak to zrobić? bo nie rozumiem tego.
1
komentarz 28 stycznia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Czego dokładnie? Jaki masz serwer? Masz do niego pełny dostęp czy to jakiś np. hosting?
komentarz 29 stycznia 2018 przez Kerdi26 Użytkownik (640 p.)
Konkretnie nie wiem gdzie umieścić plik, bo rozumiem, że ma być to .htaccess a bardziej co w nim umieścić. Mam hosting w SuperHost.
1
komentarz 29 stycznia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)

Jak zainstalujesz composer/apache-pack to doda Ci ten plik do public. To powinno wystarczyć, z tym że root directory (katalogiem z którego serwer będzie odczytywał stronę powinien być public. Jeśli nie możesz tego zmienić na serwerze, to próbowałbym wgrać to katalog wyżej public_html (pewnie taki będzie domyślny) i zmienić nazwę public na public_html.

komentarz 29 stycznia 2018 przez Kerdi26 Użytkownik (640 p.)
Wyskoczył mi błąd 500 - Internal server error, włączyłem stroną z możliwymi przyczynami tego błędu, spróbowałem zmienić prawa dostępu tak jak było opisane na pierwszej stronie o tym, i teraz nie mam wglądu do katalogów na serwerze. Z tą zmianą nazwa katalogu nie próbowałem ale własnie chwilowo nie mogę i szukam rozwiązanie jak od zmieniać te prawa.
komentarz 15 marca 2018 przez Kerdi26 Użytkownik (640 p.)

@Arkadiusz Waluk, Wracając jeszcze do tematu, napisałem funkcję w Repozytorium encji i nie mogę użyć jej potem w kontrolerze ponieważ wyskakuje mi coś takiego Method 'getOrderedProducts' not found in \Doctrine\Common\Persistence\ObjectRepository, wiesz jak to obejść?

komentarz 15 marca 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Pokaż jakieś fragmenty kodu, jak się do tego odwołujesz, jak wygląda ta metoda. Ciężko tak coś powiedzieć.
komentarz 15 marca 2018 przez Kerdi26 Użytkownik (640 p.)

Więc tak w BasketRespository mam napisaną tak funkcję 

public function getOrderedProducts($id)
{
     $conn = $this->getEntityManager()->getConnection();

     $sql= "SELECT products.name, products.picture,                products.description, products.prize FROM Basket INNER JOIN Products ON basket.id_product_id = products.id INNER JOIN Users WHERE basket.id_product_id = users.id AND users.id = :id";

     try {
       $stmt = $conn->prepare($sql);
     } catch (DBALException $e) {
     }
     try {
          $stmt->execute(['id' => $id]);
     } catch (DBALException $e) {
     }
     return $stmt->fetchAll();
}

później w controllerze 

$basket= $this->getDoctrine()
            ->getRepository(Basket::class);
        $row = $basket->getOrderedProducts($id);

I gdy wywołują tą funkcję getOrderedProducts phpstorm wyświetla taki błąd

Method 'getOrderedProducts' not found in \Doctrine\Common\Persistence\ObjectRepository,

z kolei na stronie wszystko przechodzi nie wyświetla się żaden błąd i na koniec zwraca mi szablon twiga 

return $this->render('Index/basket.html.twig', array('row' => $row));

problem jest jednak taki, że ta zmienna row później nie istnieje.

komentarz 15 marca 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)

Trochę dziwny jest dla mnie zapis z czystym SQLem i bezpośrednim odwoływaniem się do połączenia, gdy mamy ORM. Sugestie PhpStorma nie zawsze muszą być idealne, pewnych rzeczy może nie rozumieć i błędnie oznaczać np. że nie widzi jakiejś metody. Może po prostu masz jakiś błąd logiczny w samym zapytaniu? Składniowy powinien być wyrzucony jako wyjątek.

WHERE basket.id_product_id = users.id

Czy np. tutaj id usera na pewno powinno być łączone z id produktu? (tak to rozumiem, chyba że źle). Może po prostu nie masz takich danych w bazie? $row jest po prostu puste?

komentarz 19 marca 2018 przez Kerdi26 Użytkownik (640 p.)

Ok, po jakimś czasie do tego spojrzałem od nowa i błąd leżał gdzie indziej, zapytanie do bazy i odwołanie do repozytorium działa jak powinno chociaż phpstorm dalej wyświetla ten sam błąd i faktycznie popełniłem błąd skupiając się na tej sugestii od phpstorma. Tymczasem, chcę zacząć pisać testy w symfony i oczywiście napotkałem błąd odrazu po instalacji phpunit, gdy chciałem testowo odpalić jakiś test(używając polecenia z dokumentacji) wyskakuje:

# See if we are running in Cygwin by checking for cygpath program
if command -v 'cygpath' >/dev/null 2>&1; then
        # Cygwin paths start with /cygdrive/ which will break windows PHP,
        # so we need to translate the dir path to windows format. However
        # we could be using cygwin PHP which does not require this, so we
        # test if the path to PHP starts with /cygdrive/ rather than /usr/bin
        if [[ $(which php) == /cygdrive/* ]]; then
                dir=$(cygpath -m "$dir");
        fi
fi

dir=$(echo $dir | sed 's/ /\ /g')
"${dir}/simple-phpunit" "$@"

Nie znalazłem w internecie żadnego rozwiązania

komentarz 19 marca 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Poleceniem z dokumentacji tzn. ./bin/phpunit? I od razu potem wyskakuje to? Pracujesz jak rozumiem na Windowsie? Tak wnioskuję widząc Cygwina i niestety raczej ciężko będzie mi tutaj pomóc bo działam od dawna tylko na Linuxie.
komentarz 19 marca 2018 przez Kerdi26 Użytkownik (640 p.)
php ./vendor/bin/simple-phpunit

Tak na windowsie, czytałem gdzieś , żeby nie używać php bo simple-phpunit nie jest plikiem phpa ale próbując ./vendor/bin/simple-phpunit nie rozpoznawało ./.  

komentarz 19 marca 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Jak mówiłem ciężko mi tu pomóc, na Linuxie bez problemu uruchamia mi się wszystko przez ./bin/console, z Windowsa nie korzystam i o takim problemie również nie słyszałem.
komentarz 25 marca 2018 przez Kerdi26 Użytkownik (640 p.)
A znasz jakiś łatwy w obsłudze system paginacji kompatybilny do wersji 3.4.6?
komentarz 25 marca 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Dawno z żadnego nie korzystałem, no ale najpopularniejszy jest chyba bundle od KNP: https://github.com/KnpLabs/KnpPaginatorBundle
komentarz 31 marca 2018 przez Kerdi26 Użytkownik (640 p.)
Z paginacją wszystko działa okej, Teraz zająłem się ajaxem i przy wysyłaniu zapytań insert, update wszystko poszło sprawnie ale mam teraz problem z pobieraniem danych ponieważ nie wiem jak zwrócić z kontrolera tablicę z pobranymi danymi, jest na to jakiś sposób czy muszę np te dane z konwertować na typ json i wtedy za pomocą response jako string to zwrócić? I czy istnieje możliwość tworzenie plików json za poziomu php, lub uaktualniania ich danych?
1
komentarz 31 marca 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Jeśli rozszerzasz kontroler tym bazowym z Symfony, to tam jak pamiętam jest metoda json(), która jako argument przyjmuje tablicę danych, które zostaną zamienione na JSON i zwrócone. Jeśli nie to jest po prostu obiekt JsonResponse, który również przyjmuje tablicę do zamiany na JSON: https://symfony.com/doc/current/components/http_foundation.html#creating-a-json-response
komentarz 25 kwietnia 2018 przez Kerdi26 Użytkownik (640 p.)

Mam kolejne pytanie na temat testów, chcę napisać testy do repozytoriów i robię to zgodnie z dokumentacją, ale przy odpalaniu testu nie wykrywa mi klasy Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;

Fatal error: Class 'PHPUnit\Framework\TestCase' not found in C:\xampp\htdocs\Composer\project\vendor\symfony\framework-bundle\Test\KernelTestCase.php on line 23

W internecie znalazłem, że konieczne jest zaktualizowanie phpunit ja mam taki pakiet 

"symfony/browser-kit": "^4.0",
"symfony/css-selector": "^4.0",
"symfony/debug-pack": "*",
"symfony/dotenv": "^4.0",
"symfony/maker-bundle": "^1.0",
"symfony/phpunit-bridge": "^4.0",
"symfony/profiler-pack": "*",
"symfony/web-server-bundle": "^4.0"

zainstalowany domyślnie z wersją symfony 4.0.8, ale nie wiem do jakich wersji to zrobić i czy to zadziała, wiesz jak to rozwiązać?

1
komentarz 26 kwietnia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)

przy odpalaniu testu nie wykrywa mi klasy Symfony\Bundle\FrameworkBundle\Test\KernelTestCase

A w cytowanym błędzie masz że nie widzi klasy "PHPUnit\Framework\TestCase". Więc z którą jest problem? Jak uruchamiasz testy? Nie wiem czy to ma jakieś znaczenie, ale możesz popróbować najpierw po prostu poleceniem phpunit (czy też jeśli nie masz globalnie to ./vendor/bin/phpunit) albo używając samego ./bin/phpunit (coś takiego powinno się zrobić po zainstalowaniu tej paczki do Symfony).

komentarz 26 kwietnia 2018 przez Kerdi26 Użytkownik (640 p.)

Wyświetla się taki błąd: 

PHP Fatal error:  Class 'Symfony\Bundle\FrameworkBundle\Test\KernelTestCase' not found in 

Gdy próbuje użyć np: WebTestCase, efekt jest taki sam, i odpalam to poprzez interfejs graficzny w phpstormie opcja run, co do wpisywania poprzez konsolę ./vendor/bin/phpunit żeby odpalić testy muszę użyć opcji UnitTest, a takiego pliku nie mam.

komentarz 26 kwietnia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Spróbuj może tak: wejdź do katalogu vendor, następnie symfony, framework-bundle, dalej Test i zobacz czy masz tam ten plik KernelTestCase. Jeśli nie, to napisz w którym etapie się to urywa, czyli którego katalogu nie ma. Może coś nie jest zainstalowane i w ten sposób do tego dojdziemy.
komentarz 27 kwietnia 2018 przez Kerdi26 Użytkownik (640 p.)
Mam ten plik. Spróbowałem, też doinstalować phpunit w wersji 7 osobno, wtedy znika ten problem a wyskakuje coś takiego LogicException : You must set the KERNEL_CLASS environment variable to the fully-qualified class name of your Kernel in phpunit.xml / phpunit.xml.dist.
komentarz 27 kwietnia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
A masz w phpunit.xml.dist (powinien być stworzony przez paczkę od testów) zadeklarowaną wartość dla KERNEL_CLASS? Jeśli tak to jaka jest?
komentarz 28 kwietnia 2018 przez Kerdi26 Użytkownik (640 p.)

Tak mam, wygląda to tak:

  <env name="KERNEL_CLASS" value="App\Kernel" />

 

komentarz 28 kwietnia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Wygląda dobrze, hm... A masz plik bin/phpunit? Jak przez niego uruchomisz to są takie same problemy?
komentarz 28 kwietnia 2018 przez Kerdi26 Użytkownik (640 p.)
edycja 28 kwietnia 2018 przez Kerdi26

Okej, odpaliłem przez ten plik i tak jak graficznie poprzez tą opcję run wyświetla mi:

Fatal error: Class 'Symfony\Bundle\FrameworkBundle\Test\KernelTestCase' not found in\

Bez instalacji phpunit w osobnym pakiecie

 

//Edit 

Grzebałem dalej, i miałem taką sytuację, że gdy chciałem odpalić ten test z kalkulatorem z dokumentacji, i okazało się, że wtedy z kolei nie wyszukiwało mi klasy z kalkulatorem w pliku z testem, więc po jakimś czasie rozmyślania pomyślałem, że może to po prostu autloader i zainkludowałem klasę z kalkulatorem poprzez include i okazało się, że działa, więc problem musi tkwić w ładowaniu klas, ale nie wiem jak to naprawić 

<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/6.1/phpunit.xsd"
         backupGlobals="false"
         colors="true"
         bootstrap="vendor/autoload.php"
>

Tak wygląda plik konfiguracyjny

komentarz 28 kwietnia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Próbowałeś po prostu czegoś w stylu composer dump-autoload albo ./bin/console cache:clear? Jeśli nie to spróbuj, chociaż jeżeli normalnie w apce wszystko działa, a problem jest tylko przy testach to nie wiem czy coś to zmieni.

To jakiś publiczny projekt? Najchętniej bym zerknął na to w całości i ewentualnie potestował u siebie, powoli kończą mi się pomysły co tu może być nie tak.
komentarz 29 kwietnia 2018 przez Kerdi26 Użytkownik (640 p.)

Okej niespecjalnie wiem co zrobiłem, bo robiłem dużo i w pewnym momencie zorientowałem się, że, gdy korzystałem z TestCase to zaczęło działać, ładowanie klas też, dalej jednak pozostaje kwestia z KernelTestCase i WebTestCase bo wyskakuje problem:

LogicException : You must set the KERNEL_CLASS environment variable to the fully-qualified class name of your Kernel in phpunit.xml / phpunit.xml.dist or override the App\Tests\Repository\VictoriousRepositoryTest::createKernel() or App\Tests\Repository\VictoriousRepositoryTest::getKernelClass() method.

Który udało mi się obejść, gdy w metodzie getKernelClass w pliku KernelTestCase robię coś takiego:

 protected static function getKernelClass()
    {
        /*
        if (!isset($_SERVER['KERNEL_CLASS']) && !isset($_ENV['KERNEL_CLASS'])) {
            throw new \LogicException(sprintf('You must set the KERNEL_CLASS environment variable to the fully-qualified class name of your Kernel in phpunit.xml / phpunit.xml.dist or override the %1$s::createKernel() or %1$s::getKernelClass() method.', static::class));
        }

        if (!class_exists($class = $_ENV['KERNEL_CLASS'] ?? $_SERVER['KERNEL_CLASS'])) {
            throw new \RuntimeException(sprintf('Class "%s" doesn\'t exist or cannot be autoloaded. Check that the KERNEL_CLASS value in phpunit.xml matches the fully-qualified class name of your Kernel or override the %s::createKernel() method.', $class, static::class));
        }
        */

        return \App\Kernel::class;
    }

Ale to nie rozwiązuje problemu na dłuższą metę, tutaj masz linka do gita z projektem, który zrobiłem, po to żeby szukać rozwiązania https://github.com/robert611/Project_2

komentarz 29 kwietnia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
Yhm... nie wiem o co chodzi, ale u mnie to działa.

Zrobiłem po kolei:

- git clone git@github.com:robert611/Project_2.git
- composer install
- ./vendor/bin/phpunit

Efekt:

PHPUnit 7.1.5 by Sebastian Bergmann and contributors.

Testing Project Test Suite
..                                                                  2 / 2 (100%)

Time: 437 ms, Memory: 28.00MB

OK (2 tests, 2 assertions)

Chyba że czegoś nie rozumiem i to "obejście" jest jeszcze gdzieś w obecnych plikach i muszę to usunąć?
komentarz 29 kwietnia 2018 przez Kerdi26 Użytkownik (640 p.)
A tak, masz wersję z zakomentowanym sprawdzeniem wyjątków i przypisanym return \App\Kernel::class w Pliku KernelTestCase, tak jak widać w poprzednim poście.
komentarz 29 kwietnia 2018 przez Arkadiusz Waluk Ekspert (287,550 p.)
A ten plik nie jest czasem w vendorze? Bo vendora pobierałem przecież normalnie (composer install), nie ma w nim żadnej Twojej modyfikacji i komentarzy ;)
komentarz 10 maja 2018 przez Kerdi26 Użytkownik (640 p.)

Z tym vendorem fakt, nie wiem więc co jest nie tak u siebie zostawiłem to ze zmianą i niech już działa tak jak jest.  A jeśli chodzi o kodowanie znaków w aplikacji symfony trzeba coś zmieniać po za tym fragmentem w doctrine.yaml

doctrine:
    dbal:
        # configure these for your database server
        driver: 'pdo_mysql'
        server_version: '5.7'
        charset: utf8
        default_table_options:
            charset: utf8
            collate: utf8_polish_ci

 

Podobne pytania

0 głosów
1 odpowiedź 220 wizyt
pytanie zadane 11 lutego 2022 w PHP przez Moonmaker05 Początkujący (410 p.)
0 głosów
0 odpowiedzi 188 wizyt
0 głosów
0 odpowiedzi 152 wizyt
pytanie zadane 29 kwietnia 2020 w PHP przez XiverKi Obywatel (1,920 p.)

92,455 zapytań

141,263 odpowiedzi

319,099 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...