//* @Entity */
class Group
{
/**
* @ManyToMany(targetEntity="User")
* @JoinTable(
* joinColumns={@JoinColumn(onDelete="CASCADE")},
* inverseJoinColumns={@JoinColumn(onDelete="CASCADE")}
* )
*/
private $users;
}
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('taskName',TextType::class)
->add('file', FileType::class, [ 'mapped' => false, 'label' => 'Документ'])
;
}
$uploadedFile = $form['file']->getData();
$fileName = 'myfile.txt';
$uploadedFile->move('public/uploads', $fileName);
$task->setFileName('public/uploads/'.$fileName);
try {
}
catch (App\Exception\NotEnoughBonusesException $e) {
$transaction->rollBack();
Yii::$app->session->setFlash('error', 'Недостаточно бонусов для оплаты.');
}
catch (\Throwable $e) {
Yii::$app->session->setFlash('error', 'Произошла ошибка.');
$transaction->rollBack();
// Нужно бросить исключение дальше, чтобы обработчик по уполчанию его занес в лог
// Надеюсь в Yii есть обработчик по умполчанию?
throw $e;
}
try {
} catch (App\Exception\UserFriendlyExceptionInterface $e) {
Yii::$app->session->setFlash('error', $e->getUserMessage());
throw $e; // Передаем дальше для логирования
}
if (!$event->getException()->getPrevious() instanceof AlreadyLoginException) {
return;
}
// Экземпляр запроса можно передать из контроллера в тип формы
// или построить форму прямо в контроллере (что проще)
if ($request->request->has('form[dynamic_field]')) {
$builder->add('dynamic_field', TextType::class, []);
}