
Игорь
26.09.2017
07:41:47

Daniel
26.09.2017
07:42:05
как быть с функциями тогда?

Oscar
26.09.2017
07:42:12
в шаблонах не должно быть програмной логики, не считая того, что позволяет blade, он конечно позволяет выстрелить себе в ногу, но рассчитывает на адекватность
а что с функциями?

Google

Daniel
26.09.2017
07:42:30
краткий пример
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>";

Oscar
26.09.2017
07:42:34
передаешь в шаблон анонимную функцию и выполняешь

Daniel
26.09.2017
07:42:36
как такое реализовать на blade?

Oscar
26.09.2017
07:42:59
view('tpl', ['renderNode' => function() {}])

Daniel
26.09.2017
07:43:18
хм... пошел тестить)
спасибо за подсказку)

Игорь
26.09.2017
07:54:30
Пацаны
Я щото не понимаю как рептзитории работают
Смотрю примеры в инете
Это мне что, нада делать New UserRepository и потом к нему - >find юзать
Я думал они через статик работают ?
Или его нужно один екземпляр на всю аппку делать?

Daniel
26.09.2017
07:57:35

Google

Александр
26.09.2017
07:57:58
(new UserRepository)->find(...)
Это мне что, нада делать New UserRepository и потом к нему - >find юзать

Игорь
26.09.2017
07:58:11

Oscar
26.09.2017
07:58:49
https://bosnadev.com/2015/03/07/using-repository-pattern-in-laravel-5/
немного устарел материал, но в нем все довольно неплохо

Игорь
26.09.2017
07:59:09
По его примеру и делал

Oscar
26.09.2017
08:00:10
ну репозиторий в целом нужен в тех ситуациях, когда модели используют в больших количествах нестандартный функционал
https://github.com/andersao/l5-repository
а почему бы это не юзать?

Игорь
26.09.2017
08:01:09

Oscar
26.09.2017
08:02:16
почитай тогда именно про паттерн
что это такое и для чего
многие вопросы отпадут
https://habrahabr.ru/post/248505/

Игорь
26.09.2017
08:02:51
Спасибо

Oscar
26.09.2017
08:03:19
Да не за что, я просто погуглил за тебя и заодно свои знания освежил)

Игорь
26.09.2017
08:12:21
Блин

Google

Игорь
26.09.2017
08:12:30
Я это совсем не так представлял
??♂?
Но тогда по сути у меня может быть только один репозиторий, который будет работать во всем приложении
https://refactoring.guru/ru/design-patterns/catalog
Может кому пригодится

F01134H
26.09.2017
08:15:45
return response()->download($pathToFile);
бля
куда по умолчанию смотрит это дерьмо?
все папки в стораже перетыкал

Игорь
26.09.2017
08:30:30
Через консоль найди

(;¬_¬)
26.09.2017
08:30:54

F01134H
26.09.2017
08:31:03
усе ужл

(;¬_¬)
26.09.2017
08:31:05
ну там App::storagePath()

F01134H
26.09.2017
08:32:25
да все уже

Daniel
26.09.2017
08:32:32
кароче говоря, я уже перепробовал все способы передачи функции в шаблон. Даже app/Utilities.php. Не пашет и всё тут :/

F01134H
26.09.2017
08:32:44

Daniel
26.09.2017
08:32:50
не исключено

F01134H
26.09.2017
08:33:02
зачем тебе передавать функцию в шаблон?

Daniel
26.09.2017
08:34:08
потому что мне надо как-то вывести ветки 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>";
}
сей код находится, допустим, в контроллере

F01134H
26.09.2017
08:34:42
я бы сделал как то так
$func = function($count) { return $count + 1; }
return view()->with('func', $func);
// tempate.blade.php
{{ $func(1) }}

Daniel
26.09.2017
08:35:02
погугил, предлагают вынести всё это в app/Utilities.php

Google

Daniel
26.09.2017
08:35:31

Alexey
26.09.2017
08:36:35

Daniel
26.09.2017
08:41:12
капец, завис на такой мелочи, аж стыдно

F01134H
26.09.2017
08:41:49
знач нельзя функции передавать чоли

Daniel
26.09.2017
08:42:32
остался последний вариант с helper.php
пошел тестить
свершилось! черех 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() }}

Александр
26.09.2017
08:49:33
Через провайдер правильнее наверное

Daniel
26.09.2017
08:50:52
я уже был готов фигачить php код в blade шаблоне))

Дмитрий
26.09.2017
08:53:00

Daniel
26.09.2017
08:53:49

Дмитрий
26.09.2017
08:54:01

Daniel
26.09.2017
08:54:19
логично
@include('node', $child) - оно же нормально вызовет само себя?

Nikolai
26.09.2017
08:55:32
Ребят подскажите как лучше в бд хранить например статус заказа? Использовать enum или связь делать?

Дмитрий
26.09.2017
08:55:34
@include('view.name', ['some' => 'data'])
логично
<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>

Google

Daniel
26.09.2017
09:03:12

Дмитрий
26.09.2017
09:04:17

Daniel
26.09.2017
09:04:57
тяжко, однако, из верстки в бекенд переходить... но гораздо интереснее задачи)

Дмитрий
26.09.2017
09:06:34

Your
26.09.2017
09:19:16
Всем привет. Как правильно проинсталлить JwtGuard? По гайду с гитхаба не получается (
Config:clear все решил)

Alexey
26.09.2017
10:22:11
всем привет, кто http://www.maatwebsite.nl/laravel-excel/docs/export юзал?
Есть проблема, когда записей не много (до 200) экспорт успешный, когда записей 900+ пустой лист
в лимит памяти точно не упирается
в чем еще может быть проблема?

Yura
26.09.2017
10:24:49
Дебагер молчит?

Alexey
26.09.2017
10:25:44
пустые массивы
а если выборку меньше сделать - то все данные есть
при этом массив данных обнуляется именно после $sheet->fromModel($data);
или $sheet->fromArray($data);
в самой же $data - все данные есть