Александр
(new UserRepository)->find(...)
Александр
Это мне что, нада делать New UserRepository и потом к нему - >find юзать
Os
https://bosnadev.com/2015/03/07/using-repository-pattern-in-laravel-5/
Os
немного устарел материал, но в нем все довольно неплохо
Игорь
По его примеру и делал
Os
ну репозиторий в целом нужен в тех ситуациях, когда модели используют в больших количествах нестандартный функционал
Os
https://github.com/andersao/l5-repository
Os
а почему бы это не юзать?
Игорь
а почему бы это не юзать?
Чтобы юзать, нужно понять как работает, иначе будет про то черная коробка 😂
Os
почитай тогда именно про паттерн
Os
что это такое и для чего
Os
многие вопросы отпадут
Os
https://habrahabr.ru/post/248505/
Игорь
Спасибо
Os
Да не за что, я просто погуглил за тебя и заодно свои знания освежил)
Игорь
Блин
Игорь
Я это совсем не так представлял
Игорь
😂🤷‍♂😰
Игорь
Но тогда по сути у меня может быть только один репозиторий, который будет работать во всем приложении https://refactoring.guru/ru/design-patterns/catalog Может кому пригодится
invariance
return response()->download($pathToFile);
invariance
бля
invariance
куда по умолчанию смотрит это дерьмо?
invariance
все папки в стораже перетыкал
Игорь
Через консоль найди
(;¬_¬)
return response()->download($pathToFile);
а полный путь не пробовал указывать?
invariance
усе ужл
(;¬_¬)
ну там App::storagePath()
invariance
да все уже
Daniil 👾
кароче говоря, я уже перепробовал все способы передачи функции в шаблон. Даже app/Utilities.php. Не пашет и всё тут :/
Daniil 👾
не исключено
invariance
зачем тебе передавать функцию в шаблон?
Daniil 👾
потому что мне надо как-то вывести ветки nested set, что далается примерно так: function renderNode($item) { echo "<li>"; echo "<b>{$item->name}</b>"; if ( $item->children()->count() > 0 ) { echo "<ul>"; foreach($item->children as $child) renderNode($child); echo "</ul>"; } echo "</li>"; }
Daniil 👾
сей код находится, допустим, в контроллере
invariance
я бы сделал как то так $func = function($count) { return $count + 1; } return view()->with('func', $func); // tempate.blade.php {{ $func(1) }}
Daniil 👾
погугил, предлагают вынести всё это в app/Utilities.php
Daniil 👾
я бы сделал как то так $func = function($count) { return $count + 1; } return view()->with('func', $func); // tempate.blade.php {{ $func(1) }}
return view('categories.index', compact('nodes'))->with('rendernode', $rendernode); Parse error: syntax error, unexpected 'return' (T_RETURN)
Daniil 👾
капец, завис на такой мелочи, аж стыдно
invariance
знач нельзя функции передавать чоли
Daniil 👾
остался последний вариант с helper.php
Daniil 👾
пошел тестить
Daniil 👾
свершилось! черех helpers.php кому интересно, то: // app/helpers.php <?php if (! function_exists('myGetDate')) { function myGetDate() { // your code } } затем в composer.json "autoload": { "files": [ "app/helpers.php" ] } затем composer dump-autoload и в конце {{ myGetDate() }}
Александр
Через провайдер правильнее наверное
Daniil 👾
я уже был готов фигачить php код в blade шаблоне))
Anonymous
краткий пример function renderNode($item) { echo "<li>"; echo "<b>{$item->name}</b>"; if ( $item->children()->count() > 0 ) { echo "<ul>"; foreach($item->children as $child) renderNode($child); echo "</ul>"; } echo "</li>"; } echo "<ul>"; foreach($nodes as $node) renderNode($node); echo "</ul>";
Почему бы не сделать всё средствами blade? Более что когда будет с blade меньше и авглядить он будет лучше, учитывая echo не будет. Почему не заюзать @include() ? <ul> @foreach($nodes as $node) @include('node', $node) @endforeach </ul>а в node.blade.php <li> <b>{{$node->name}}</b>; @if($node->children()->count() > 0 ) <ul> @foreach($node->children as $child) @include('node', $child) @endforeach </ul> @endif </li>
Anonymous
я уже был готов фигачить php код в blade шаблоне))
Зато теперь ты нафигачил html в php
Daniil 👾
логично
Daniil 👾
@include('node', $child) - оно же нормально вызовет само себя?
Anonymous
@include('node', $child) - оно же нормально вызовет само себя?
попробуй, я на одном из проектов юзал что-то типо того, рекурсия там отрабатывала нормально
Anonymous
@include('view.name', ['some' => 'data'])
Anonymous
логично
<ul> @foreach($nodes as $node) @include('node', ['node' => $node]) @endforeach </ul>и так <li> <b>{{$node->name}}</b>; @if($node->children()->count() > 0 ) <ul> @foreach($node->children as $child) @include('node', ['node' => $child]) @endforeach </ul> @endif </li>
Anonymous
О. спасибо) так работает)
И тебе спасибо! Я как лох бы и не знал бы как код в Телеграме красиво постить)
Daniil 👾
тяжко, однако, из верстки в бекенд переходить... но гораздо интереснее задачи)
Anonymous
тяжко, однако, из верстки в бекенд переходить... но гораздо интереснее задачи)
Главное что у тебя есть своевременное ощущение что ты делаешь что-то не так, остальное практика и время!
Anonymous
Я бы создал табличку со статусами (id, name). А так всё зависит от того, что тебе конкретно в итоге нужно. Чем понятнее, проще, и перспективней, тем и лучше, жестких правил на этот счет нет.
Anonymous
Всем привет. Как правильно проинсталлить JwtGuard? По гайду с гитхаба не получается (
Anonymous
Config:clear все решил)
Aleksey Y.
всем привет, кто http://www.maatwebsite.nl/laravel-excel/docs/export юзал?
Aleksey Y.
Есть проблема, когда записей не много (до 200) экспорт успешный, когда записей 900+ пустой лист
Aleksey Y.
в лимит памяти точно не упирается
Aleksey Y.
в чем еще может быть проблема?
yurapif
Дебагер молчит?
Aleksey Y.
Aleksey Y.
пустые массивы
Aleksey Y.
а если выборку меньше сделать - то все данные есть
Aleksey Y.
при этом массив данных обнуляется именно после $sheet->fromModel($data);
Aleksey Y.
или $sheet->fromArray($data);
Aleksey Y.
в самой же $data - все данные есть
Aleksey Y.
Aleksey Y.
лимит памяти 128, на этом экспорте памяти ест 44
Aleksey Y.
по идее, проблем не должно быть
Aleksey Y.
если выборку ограничить, то все ок