Я определил новый контекст профиля в sonata_media.yaml:
...
default_context: profile
contexts:
default:
providers:
- sonata.media.provider.dailymotion
- sonata.media.provider.youtube
- sonata.media.provider.image
- sonata.media.provider.file
- sonata.media.provider.vimeo
formats:
small: {width: 100, quality: 70}
big: {width: 500, quality: 70}
profile:
providers:
- sonata.media.provider.image
formats:
small: {width: 90, quality: 70}
big: {width: 90, quality: 70}
...
В моем классе администратора это называется так:
$formMapper
->tab('User')
...
->with('Media')
->add('profilePicture', MediaType::class, [
'provider' => 'sonata.media.provider.image',
'context' => 'profile',
'required' => false,
])
->end()
Но когда изображение загружается, миниатюры создаются в папке контекста и размеров по умолчанию.
Ошибки нет.
Запуск bin/console sonata:media:fix-media-context не помогает.




Ха-ха, я обнаружил, что когда изображение загружается, каждая новая загрузка выполняется в одном и том же контексте. Мне просто нужно было удалить картинку перед загрузкой, и мой новый контекст используется :) Может быть, этот пост поможет другому новичку ...