Filetype, навіщо потрібно властивість data_class
- Symfony
Доброго времени суток шановні!
Вивчаю Symfony3, перебрав з пів дюжини варіантів створення / обробки поля для завантаження відразу декількох файлів.
Серед іншого, при створенні / додаванні поля типу FileType у цього самого поля є атрибут data_class. Навіщо подібний атрибут у самої форми - я розумію, але навіщо цей атрибут у FileType мені не зовсім зрозуміло.
VendorFile - цей клас я створив сам, для тесту
В якому випадку data_class. для яких цілей його можна застосовувати? Якщо не складно, приведіть будь ласка простий приклад, як і коли це можна використовувати? По можливості так само хотілося б почути трохи теорії на цю тему.
Так само мені не зрозуміло, чому не викликається конструктор класу VendorFile. Я собі уявляв, що властивості цього класу повинні бути ініціалізірованни властивостями об'єкта UploadFile, але, мабуть це не так.
>> 'multiple' => 'multiple', <-- Это булево свойство и оно не будет работать в данном случае
не знаю як, але працює, можливо конвертується в True, але з Вашим зауваженням я повністю згоден, це логічне властивість
>> data_class потрібен для маппінга даних з $ _FILES на об'єкт.
підкажіть будь ласка, в яких випадках це може бути корисно / необхідно і чому не викликається конструктор цього класу? Чи можна в цьому класі задати будь-які обробники, наприклад, HasLifecycleCallback, створені спеціально для цього файлу?
Євген Вольф. Ознайомтеся будь ласка з прикладом з документацією symfony.com/doc/current/controller/upload_file.html припускаю, що все стане на свої місця.
Денис. прочитав уважно, двічі. На жаль, чи то я чогось рішуче не розумію, чи то, за посиланням вище не розкривається тема і відсутні приклади заміни стандартного об'єкта File в параметрі data_class на свій. Тобто я зрозумів як можна / потрібно завантажувати файли, але не зрозумів в яких випадках може знадобитися перевизначити data_class для файлу і чому не викликається його конструктор.
Ваш відповідь на питання
Увійдіть, щоб написати відповідь
- Symfony
- Symfony
- Symfony
- Symfony
- Володимир
- Повний робочий день
- від 40 000 до 80 000 руб.
- Москва
- Повний робочий день
- від 150 000 до 250 000 руб.
MEF (Будинок Французького Підприємництва)
15000 руб. / За проект
150000 руб. / В місяць
Увійдіть на сайт
Щоб задати питання та отримати на нього кваліфіковану відповідь.