Yushkevich
если же упало, значит ошибка загрузки
Yushkevich
try {
$request->file->store()
}
Yushkevich
catch ($e) {
return error
}
Luka
Aleksey Y.
Сделай мутатор в контроллере, который будет сохранять куда нужно и как нужно
Luka
решилась проблема линком... это нормальная практика?
Mícheál
там же вроде комманда даже для этого есть стораж линк
Gabit
Ребят чето я туплю, немогу отловить ошибку
Gabit
public function checkParent(int $id){
$parent = $this->repository->find($id);
if(!$parent){
$this->response['errors'] = 'parent is doesnt exists';
return $this->sendResponse(422);
}
return true;
}
Gabit
Если он не находит запись выдает ошибку
Gabit
Gabit
Не получается отловить ошибку, пробовал через try catch все равно один и тот же результат
Yushkevich
а репозиторий что возвращет?
Gabit
null
Gabit
вот функция репозитория самая обычная
public function find($id, $columns = array('*')) {
return $this->model->findOrFail($id, $columns);
}
Yushkevich
так, а ты уверен, что он у тебя доходит до вызова репозитория?
Yushkevich
у тебя функция checkParent, а ощущение, что падает раньше
Yushkevich
попробуй сдлеать dd($id) в самом начале
Gabit
да я пробовал после $parent = $this->rep ....->find($id);
делать dd($parent), возвращает null
Yushkevich
и проверь, что роут именно на эту функцию заодит
Yushkevich
ты dd($id) сделай
Gabit
Yushkevich
сделай dd('1'); внутри if и dd('2'); за пределами перед return в этом случае
Gabit
Все правильно возвращает
Yushkevich
и проверь куда идет
Yushkevich
ну чудес не бывает
Yushkevich
попробуй сравнение на null сделать
Gabit
попробывал
if(!$parent){
dd(1);
не доходит до dd
Gabit
Юрий
так не трогай parent вообще
Юрий
выше него сделай
Юрий
тут сомневаются что у тебя весь метод вызывается
Gabit
Метод точно вызывается
Юрий
public function checkParent(int $id){
dd(1);
$parent = $this->repository->find($id);
if(!$parent){
$this->response['errors'] = 'parent is doesnt exists';
return $this->sendResponse(422);
}
return true;
}
Gabit
Yushkevich
if(is_null($parent)) {
dd('1');
$this->response['errors'] = 'parent is doesnt exists';
return $this->sendResponse(422);
}
else {
dd('2');
return true
}
Yushkevich
попробуй так
Yushkevich
даже лучше вот так
Yushkevich
if(isset($parent) && !is_null($parent)) {
dd('2');
return true
}
else {
dd('1');
$this->response['errors'] = 'parent is doesnt exists';
return $this->sendResponse(422);
}
Gabit
если в репозитории стоит find он дает посмотреть что находится в dd
Gabit
если стоит findOrFail ошибка происходит раньше
Gabit
то есть
$parent = ....
dd(1);
не возвращает 1
Gabit
Если просто используется find то вовзращает 1
Gabit
и дальше все равно срабатывает ошибка
Yushkevich
если findOrFail стоит, то надо через try catch ловить.
Yushkevich
Мой код последний что возвращает?
Gabit
я пробовал все так же
Yushkevich
Gabit
Gabit
я пробовал catch
Юрий
покажи как
Yushkevich
так погоди
Gabit
if(isset($parent) && !is_null($parent)) {
dd('2');
return true;
}
else {
dd('1');
$this->response['errors'] = 'parent is doesnt exists';
return $this->sendResponse(422);
}
возвращает 1
Gabit
Если убрать dd показывает ошибку
Yushkevich
Yushkevich
return 'error';
Yushkevich
сделай
Yushkevich
вместо sendResponse
Gabit
if(isset($parent) && !is_null($parent)) {
return true;
}
else {
return false;
}
Gabit
Все
Yushkevich
если ты в браузере смотришь, что true / false не очень наглядно можно дебажить
Gabit
спасибо моя ошибка
Yushkevich
в sendReposponse?
Gabit
Yushkevich
угу. Чудес не бывает. Нужно по шагам дебажить до локализации места, где падает
Gabit
:D давно не работал, только с отпуска оказывается на выходе не обрабатывает если проверка вернула ошибку
Николай
предчувствую спам
Javharbek
предчувствую спам
Если вы про меня я просто во все группу который есть программисты вдруг кто работал подскажыть.
Vadim
Николай
Anonymous
Ребята, кто-нибудь работал с пакетом для меню https://github.com/lavary/laravel-menu? Как в нём разрулить роуты у которых есть параметры?
add('За месяц', ['action' => 'CrmController@homeSalaryDate'])->nickname('salary.date');
Выдаёт Missing required parameters for [Route: crm.home.finance.salary.date] [URI: crm/home/finance/salary/{year}-{month}].
Yushkevich
обе системы обладают АПИ.
Есть более экзотичные виды - каждая из систем обладает функционалом импорт / экспорт. Он не всегда решит все вопросы. АПИ почти всегда.
Я помог тебе? :)
Javharbek
Yushkevich
ну у битрикса там порядка 5-6 классов за это отвечают. При этом есть еще старое апи и новое, на D7 :) Часть методов старого уже на работает, а новое еще не все покрывает. Ну и еще не все покрыто документацией / матами.
Так что удачи :) Человек, знающий толк в БДСМ :)
Yushkevich
по опен карту не подскажу, но мне кажется, там схожая картина. "Красивого АПИ" рестового у битрикса точно нет.
Yushkevich
там может проще посмотреть через csv / xml
Yushkevich
БДСМ ? ) ну в некотором роде, да :) Погугли :)
Firdavs
лол
Юрий
так толсто что псц