Size: a a a

2020 February 06

AP

Andrey Pirozhkov in Laravel Pro
Првиет всем, подскажите пожалуйста, как объединить несколько полей в одно при записи в БД в nova.
источник

A

Arman in Laravel Pro
Roman Kolosov
кароче вот так что бы наверняка
public function deleting(Post $post)
{
   $images = $post->images;
   
   $post->images()->sync([]);
   
   $images->each($image => Storage::delete($image->slug));

   Image::whereIn('id', $images->pluck('id'))->delete();
}
delete вроде должен bool вернуть- смог удалить или нет, а там всякое могло пойти.. и вроде как внутри перехватили ErrorException.
источник

zN

zVlad Nesquik in Laravel Pro
Спасибо))) Вот это я типо и хотел увидеть :)
источник

zN

zVlad Nesquik in Laravel Pro
По картинкам :)
источник

RK

Roman Kolosov in Laravel Pro
zVlad Nesquik
По картинкам :)
на пыхе ниже 7.4 нужно клоушер заместо стрелочной функции и если связь hasMany убрать метод sync
источник

AM

Alexey Mihaylov in Laravel Pro
Ребят, помогите советом:

в контроллере есть методы с одинаковым окончанием, типа:

return $updated ?
           response()->json(['result' => 'success'], 200) :
           response()->json(['result' => 'error', 'message' => 'Failed...'], 500);

Можно как-то сделать этот фрагмент поэлегантнее? Например, унаследоваться от JsonResponse и поместить эти данные там. Типа,

return $updated ? OperationSucceeded : OperationFailed ;

?

Такое имеет право на жизнь?
источник

RK

Roman Kolosov in Laravel Pro
Alexey Mihaylov
Ребят, помогите советом:

в контроллере есть методы с одинаковым окончанием, типа:

return $updated ?
           response()->json(['result' => 'success'], 200) :
           response()->json(['result' => 'error', 'message' => 'Failed...'], 500);

Можно как-то сделать этот фрагмент поэлегантнее? Например, унаследоваться от JsonResponse и поместить эти данные там. Типа,

return $updated ? OperationSucceeded : OperationFailed ;

?

Такое имеет право на жизнь?
вопрос а зачем это так писать?? метод update по умолчанию возвращает 201 и 500 если экзепшен))
источник

AM

Alexey Mihaylov in Laravel Pro
Roman Kolosov
вопрос а зачем это так писать?? метод update по умолчанию возвращает 201 и 500 если экзепшен))
Он же, вроде, false возвращает в случае неудачи...
источник

RK

Roman Kolosov in Laravel Pro
public function update(Request $request, Model $model)
{
  return ModelResource::make($model->update($request->all()));
}
источник

RK

Roman Kolosov in Laravel Pro
даже этот код уже возвращает 201 или 404, если нужно проверять данные то нужен еще форм реквест с валидацией, добавятся 422 ошибки
источник

RK

Roman Kolosov in Laravel Pro
public function update(UpdateModelRequest $request, Model $model)
{
  return ModelResource::make($model->update($request->validated()));
}
источник

RK

Roman Kolosov in Laravel Pro
500 если апи возвращает это гг
источник

RK

Roman Kolosov in Laravel Pro
не должен апи сервер 500 кидать впринципе, обычно это значит что алерт и нужно срочно чинить
источник

AM

Alexey Mihaylov in Laravel Pro
Спасибо, сейчас проверю.
источник

A

Arman in Laravel Pro
https://github.com/laravel/framework/blob/6.x/src/Illuminate/Filesystem/Filesystem.php#L210
никого не смущает удаление нескольких файлов?
источник

RK

Roman Kolosov in Laravel Pro
Arman
https://github.com/laravel/framework/blob/6.x/src/Illuminate/Filesystem/Filesystem.php#L210
никого не смущает удаление нескольких файлов?
ну тем более тогда можно сделать еще проще
источник

RK

Roman Kolosov in Laravel Pro
public function deleting(Post $post)
{
   $images = $post->images;
   
   $post->images()->sync([]);
   
   Storage::delete($images->pluck('slug'));

   Image::whereIn('id', $images->pluck('id'))->delete();
}
источник

AM

Alexey Mihaylov in Laravel Pro
Roman Kolosov
не должен апи сервер 500 кидать впринципе, обычно это значит что алерт и нужно срочно чинить
А вообще, использование для ответа классов, унаследованных от JsonResponse, допустимо? Или лучше response()->json() ?
источник

RK

Roman Kolosov in Laravel Pro
Alexey Mihaylov
А вообще, использование для ответа классов, унаследованных от JsonResponse, допустимо? Или лучше response()->json() ?
грубо говоря, теже яйца только в профиль
источник

AM

Alexey Mihaylov in Laravel Pro
Или просто return ['result' => 'success'] ?
источник