![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 14.06.2017 Ostrzeżenie: (0%) ![]() ![]() |
Cześć!
Mam encję Article, która ma id, title i image. Tworzę formularz, dodaję walidację i wszystko ok. Ale co w sytuacji, gdy potrzebuję dodatkowo 3 miniaturki z uploadowanego zdjęcia, które muszę przyciąć, uploadować i zapisać do nich ścieżkę w bazie danych? Czy wtedy powinienem dopisać nową encję zdjęcia, która będzie miała swoją tabelę w bazie danych, dodatkową klasę do przycinania obrazka i będzie wstrzyknięta do Article (encja zdjęcia oczywiście)? Czy może jest jakieś proste rozwiązanie, aby wszystko to trzymać w encji Artykułu? Ten post edytował CodeRider 19.06.2017, 19:11:04 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Podejścia są trzy:
- tylko oryginalny plik jako encja w DB - jak wyżej, ale do encji dodane dodatkowe informacje - każdy plik jako encja w DB Najsensowniej wydaje się 2. Po uploadzie masz standardowe encje file, gdzie dodajesz pola typu pathSmall, pathXSmall etc. Akcję tworzącą miniaturki odpalasz w CRONie, akcja wyszukuje encje bez miniaturek, tworzy je i zapisuje w bazie. Przykładowa encja file z jednego z projektów symfony: Cytat `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, `mime` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, `extension` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL, `path` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, `deleted_at` datetime DEFAULT NULL, Gdzie path to unikalna, wygenerowana nazwa pliku pod którą jest on zapisywany na dysku. Wystarczy dodać path_small i przed pobraniem miniaturki sprawdzać, czy pole nie jest null (jak jest null można wstawić zaślępkę typu "trwa przetwarzanie zdjęcia" czy coś w tym stylu) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 11:08 |