[Symfony][Symfony 3.4] Entity - unikalna wartość |
[Symfony][Symfony 3.4] Entity - unikalna wartość |
22.04.2018, 23:55:48
Post
#1
|
|
Grupa: Zarejestrowani Postów: 304 Pomógł: 1 Dołączył: 28.06.2009 Ostrzeżenie: (0%) |
W entity kolumnę "name" mam ustawioną jako unikalną - to działa, wyrzuca błąd jeśli próbuję wrzucić duplikat.
Chciałbym aby w przypadku próby wrzucenia duplikatu, instancja danego Entity wypełniła się rekordem o przekazanej wartości do kolumny name, na chwilę obecną mam to zrobione mało elegancko
Jak można to lepiej napisać? Obiekt browser potem jest wykorzystywany tak
|
|
|
23.04.2018, 08:05:39
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) |
Jak używasz MySQL to możesz użyć "ON DUPLICATE KEY":
https://dev.mysql.com/doc/refman/8.0/en/ins...-duplicate.html Ponieważ jednak jest to standard MySQL, będziesz musiał użyć native query (albo napisać lub znaleźć jakieś rozszerzenie Doctrine) Jeśli chcesz zrobić tak, żeby w przypadku konfliktu leciał INSERT zamiast update to można użyć merge: https://www.doctrine-project.org/projects/d...erging-entities Jak chcesz coś kompletnie swojego to najlepiej użyć wbudowanej obsługi zdarzeń: https://www.doctrine-project.org/projects/d...ifecycle-events Zarejestrować serwis, który coś tam zrobi przed każdą próbą utrwalenia encji. |
|
|
23.04.2018, 13:23:44
Post
#3
|
|
Grupa: Zarejestrowani Postów: 531 Pomógł: 55 Dołączył: 3.01.2016 Skąd: Łowicz Ostrzeżenie: (0%) |
-------------------- Szukam zleceń Symfony, Laravel, Back-End, Front-End, PHP, MySQL ...
|
|
|
Wersja Lo-Fi | Aktualny czas: 25.04.2024 - 18:35 |