These are chat archives for LaravelRUS/chat

5th
Nov 2016
Anton Kartsev
@bigperson
Nov 05 2016 09:05

@greabock

$commentable = (new ($request->route()->getAction()['commentable']))->findOrFail($id);

синтаксическая ошибка где-то тут, понять не могу.

Роман Сохарев
@greabock
Nov 05 2016 09:07
@bigperson ну разбей на переменные, я ж в браузере писал
$commentableClass  = $request->route()->getAction()['commentable'];
$commentable   =  (new $commentableClass)->findOrFail($id);
Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:08
Всем привет! Есть ли у кого-нибудь опыт по разбиению Laravel 5.3 на модули? Хотелось бы попробовать сделать это. Какими пакетами вы пользовались, или сделали это самостоятельно, не прибегая за помощью к сторонним пакетам?
Роман Сохарев
@greabock
Nov 05 2016 09:10
@Nur777 да это же не сложно
Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:14
@greabock :) видимо это зависит от опыта) Мне показалось очень тяжелым вынести всё это по разным моделям, и чтобы стандартные artisan команды остались рабочими...
<Model_1>
-Http
---Controllers
---Middleware
---Requests
-Routes
-Mails
-Events
-Listeners
-Policies
-Providers
-database
---factories
---migrations
---seeds
-resources
---assets
---img
---lang
---views
Роман Сохарев
@greabock
Nov 05 2016 09:15
Я целую статью же написал по модулям
Anton Kartsev
@bigperson
Nov 05 2016 09:15
@greabock Спасибо
KarmaBot
@KarmaBot
Nov 05 2016 09:15
Спасибо (+1) для @greabock принято! Текущая карма +453.
Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:16
@greabock а в какую сторону двигаться, находить точки того, как Ларавель подтягивает все эти файлы из этих папок, и затем в цикле сделать чтобы грузились из соотв. папок моделей? А модели например определяем в конфиге в массиве?
А можно твою статью?
Роман Сохарев
@greabock
Nov 05 2016 09:21
https://gist.github.com/greabock/48787baab768b519f21c
Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:23
@greabock спасибо, гляну)
KarmaBot
@KarmaBot
Nov 05 2016 09:23
Спасибо (+1) для @greabock принято! Текущая карма +454.
JhaoDa
@jhaoda
Nov 05 2016 09:24

@Nur777

как Ларавель подтягивает все эти файлы из этих папок

PSR-4 не знаешь?

Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:26
@jhaoda думаю что знаю)
JhaoDa
@jhaoda
Nov 05 2016 09:27
@greabock бро, ты как думаешь, если надо в зависимости от каких-то условий грузить шаблоны то из одной папки, то из другой, при том, что имена шаблонов совпадают, то переопределить FileViewFinder — самое труЪ?
@Nur777 тогда о чем вопрос?
Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:28
@jhaoda о модульной структуре, а также о том, чтобы из-за модульной структуры не сломались команды artisan
JhaoDa
@jhaoda
Nov 05 2016 09:28
@Nur777 я и спрашиваю — PSR-4 не знаешь?
Роман Сохарев
@greabock
Nov 05 2016 09:29
@jhaoda Опиши кейс подробнее.
JhaoDa
@jhaoda
Nov 05 2016 09:29
@Nur777 консольным командам наплевать на твою структуру, они будут создавать файлы там, где Тэйлор решил
Роман Сохарев
@greabock
Nov 05 2016 09:29
@jhaoda Вообще, скорее всего тебе помогут неймспейсы
Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:30
@jhaoda я не про это, я про migrate, rollback...
JhaoDa
@jhaoda
Nov 05 2016 09:30
@greabock ну блин... decktop/cart.blade, mobile/cart.blade. Я хочу писать view('cart'), а какой-то умный механизм сам подставит нужную папку
@Nur777 мигратор не умеет ходить по разным папкам
Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:34
@jhaoda вот вот это для меня и плохо, не знаю как этот вопрос решить.
Роман Сохарев
@greabock
Nov 05 2016 09:34
@jhaoda
$this->loadViewsFrom($desktopPath, 'mobile');
$this->loadViewsFrom($mobilePath, 'desktop');
view($scope.'::cart');
Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:34
может в @greabock `овской статье есть ответ, читаю пока.
JhaoDa
@jhaoda
Nov 05 2016 09:35
@greabock я не хочу view($scope.'::cart');, тупая лишняя работа :)
Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:35
Парни, а что значит ::cart?
Роман Сохарев
@greabock
Nov 05 2016 09:35
имя вьюхи
Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:36
а почему через две двоеточии?
Роман Сохарев
@greabock
Nov 05 2016 09:36
@jhaoda ну ништяк, а pathfinder переопределить, типа изящнее?
Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:36
разве не так: <folder>.viewname?
JhaoDa
@jhaoda
Nov 05 2016 09:37
@greabock ну так мне в каждом контроллере/методе придется где-то скоуп брать
Роман Сохарев
@greabock
Nov 05 2016 09:37
@Nur777 до двоеточия скоуп/неймспейc идет
JhaoDa
@jhaoda
Nov 05 2016 09:37
@Nur777 https://laravel.com/docs/5.3/packages#views доку читать надо
Роман Сохарев
@greabock
Nov 05 2016 09:37
@jhaoda переопредели хелпер view
JhaoDa
@jhaoda
Nov 05 2016 09:37
@greabock ну ваще :)
Ilnur Shaykhutdinov
@Nur777
Nov 05 2016 09:37
@greabock @jhaoda спасибо!)
KarmaBot
@KarmaBot
Nov 05 2016 09:37
Спасибо (+1) для @greabock принято! Текущая карма +455.
Спасибо (+1) для @jhaoda принято! Текущая карма +1286.
JhaoDa
@jhaoda
Nov 05 2016 09:38
@greabock завтра мне моча стукнет и я захочу фасад юзать, что тогда переопределять?
Роман Сохарев
@greabock
Nov 05 2016 09:38
ну... если моча...
JhaoDa
@jhaoda
Nov 05 2016 09:40
@greabock хо, ты навел на мысль. Можно же регать только нужный неймспейс для вьюх, decktop/mobile
Вернее, не так. Регать неймспейс типа platform, но с разным корнем
Роман Сохарев
@greabock
Nov 05 2016 09:41
@jhaoda ну это если ты на этапе регистрации путей уже готов определиться что тебе нужно...
JhaoDa
@jhaoda
Nov 05 2016 09:42
Да, это в сервис-провайдере решается
Роман Сохарев
@greabock
Nov 05 2016 09:42
Хотя... реквест на этапе boot уже есть... а вот сессий нет еще
JhaoDa
@jhaoda
Nov 05 2016 09:43
А они и не нужны
Роман Сохарев
@greabock
Nov 05 2016 09:43
ну просто некоторые хранят состояние "дескоп/мобайл" в сессии
например если чувак нажал на телефоне "перейти на полную версию"
JhaoDa
@jhaoda
Nov 05 2016 09:45
@greabock в куке хранить можно
Роман Сохарев
@greabock
Nov 05 2016 09:46
я ж не спорю, просто так... мысли в слух
@jhaoda вообще, мне больше нравится идея с middleware
JhaoDa
@jhaoda
Nov 05 2016 09:51
@greabock что она будет делать?
Роман Сохарев
@greabock
Nov 05 2016 09:51
ну определять десктоп это или мобила, например
и на основе этого делать
app('view')->addNamespace($namespace, $path);
там же проврять типа если юзер хочет десктоп, не смотря на то, что он на мобиле...
JhaoDa
@jhaoda
Nov 05 2016 09:54
@greabock ну вот с учётом последнего пункта — вполне
Роман Сохарев
@greabock
Nov 05 2016 09:55
Короче ларка такая ларка... можно как угодно вывернуть =)
JhaoDa
@jhaoda
Nov 05 2016 09:59
@greabock спасибо
KarmaBot
@KarmaBot
Nov 05 2016 09:59
Спасибо (+1) для @greabock принято! Текущая карма +456.
Anton Vorontsov
@symbios-zi
Nov 05 2016 10:26
Ребята, кто нибудь в Image Intervention кеш картинок реализовывал? Не получается expires заголовок установить.
Anton Vorontsov
@symbios-zi
Nov 05 2016 10:35
namespace App\Services\File\ImageService\Templates;

use Intervention\Image\Image;
use Intervention\Image\Filters\FilterInterface;

class Thumbnail implements FilterInterface
{
    public function applyFilter(Image $image)
    {
        return $image->cache(function ($image) {
             return $image->resize(130, 240);
        }, 60, true);
    }
}
И получаю ошибку Command (cache) is not available for driver (Gd). Не пойму что я еще должен поставить для GD
Andrey Helldar
@andrey-helldar
Nov 05 2016 10:42
@symbios-zi тебе зачем там кэш? Не проще при добавлении картинки сразу в нужные разрешения резать?
А есои у тебя кэш в оперативку литься будет?
Ваня Devium
@webdevium
Nov 05 2016 10:44
всем привет
KarmaBot
@KarmaBot
Nov 05 2016 10:44
@webdevium, привет =)
Andrey Helldar
@andrey-helldar
Nov 05 2016 10:44
Даров
KarmaBot
@KarmaBot
Nov 05 2016 10:44
Будь как дома, @AndreyHelldar, я ни в чем не откажу. Много мануалов, коль желаешь, покажу :)
bredevil
@bredevil
Nov 05 2016 10:47
привет всем
KarmaBot
@KarmaBot
Nov 05 2016 10:47
Приветствую тебя, @bredevil!
bredevil
@bredevil
Nov 05 2016 10:48
@KarmaBot первый закон робототехники
Anton Vorontsov
@symbios-zi
Nov 05 2016 10:48
@bredevil :D
Ваня Devium
@webdevium
Nov 05 2016 10:48
@bredevil он не знает, он - кастрюля)))
bredevil
@bredevil
Nov 05 2016 10:48
))
JhaoDa
@jhaoda
Nov 05 2016 10:48
@symbios-zi кэш только через фасад работает, если судить по коду и доке
Andrey Helldar
@andrey-helldar
Nov 05 2016 10:48
@symbios-zi Note: This method requires the additional package intervention/imagecache.
Добавлял этот пакет себе? пруф
Ваня Devium
@webdevium
Nov 05 2016 10:51
@jhaoda Темыч, а можно себе в 5.2 сделать глобальные хелперы для Cache и Redis, как, например, request() или response() ?
JhaoDa
@jhaoda
Nov 05 2016 10:51
@webdevium ну посмотри, как в 5.3 сделано
Ваня Devium
@webdevium
Nov 05 2016 10:52
@jhaoda как сделано - смотрел :) Я просто как всегда, перед тем как сделать, боюсь что все уже знают, что так нельзя, а я буду делать :)
Andrey Helldar
@andrey-helldar
Nov 05 2016 10:53
Кто-нить юзал куки в мидлварях?
Голову сломал доку курить - только при return view('index')->withCookie(cookie('my-param', 'my-value', 60)) работает, а если в мидлвари устанавливать - результат отсутствует(
JhaoDa
@jhaoda
Nov 05 2016 10:54
@andrey-helldar и как ты в мидлваре куку ставишь?
Anton Vorontsov
@symbios-zi
Nov 05 2016 10:54
@andrey-helldar стоит у меня
JhaoDa
@jhaoda
Nov 05 2016 10:55
@symbios-zi :point_up: 5 ноября 2016 г., 17:48 Пробовал через фасад?
Andrey Helldar
@andrey-helldar
Nov 05 2016 10:55
@jhaoda
public function handle($request, Closure $next)
    {
        \Cookie::make('locale', $request->{'locale'}, 60);

        return $next($request);
    }
JhaoDa
@jhaoda
Nov 05 2016 10:55
@andrey-helldar круто. Создал куку. И? Создал != отправил.
Anton Vorontsov
@symbios-zi
Nov 05 2016 10:56
поговорил с админом, и он сказал чтобы я в отдельную папку сделал картинки, а он кеш на nginx сделает.
Сделаю /resized/path_to_images/image.jpg
Andrey Helldar
@andrey-helldar
Nov 05 2016 10:56
@jhaoda вот и я думаю, что не ушла она. Браузер ее не видит.
Крайний раз в 5.0 с ними сталкивался, и то в одном проекте.
Anton Vorontsov
@symbios-zi
Nov 05 2016 10:56
и сверху CloudFlare со своим кешем
JhaoDa
@jhaoda
Nov 05 2016 10:57
@andrey-helldar ну так она и не уйдёт, ты же её не отправляешь
@andrey-helldar \Cookie::queue(...)
Andrey Helldar
@andrey-helldar
Nov 05 2016 11:01
@jhaoda \Cookie::queue(cookie('locale', $locale, 60)); сработало.
Я внутренний параметр через фасад пробовал пихнуть - тот не работал)
JhaoDa
@jhaoda
Nov 05 2016 11:02
@symbios-zi я тебе давно говорил, что все эти кэши бесполезны
Для отдачи какого-то жалкого ресайза грузится весь тяжелый бэк, ищет на диске картинку и отдаёт её. Зачем?
Ваня Devium
@webdevium
Nov 05 2016 11:03
@jhaoda для nginx же есть такая тема, вроде как намного быстрее, не?
Anton Vorontsov
@symbios-zi
Nov 05 2016 11:04
@webdevium ну мне тоже сказал админ
Ваня Devium
@webdevium
Nov 05 2016 11:05
@symbios-zi nginx со статикой работает быстро + там на lua пару строк кода - и получается прекрасненько :)
Andrey Helldar
@andrey-helldar
Nov 05 2016 11:11
@jhaoda спасибо!
KarmaBot
@KarmaBot
Nov 05 2016 11:11
Спасибо (+1) для @jhaoda принято! Текущая карма +1287.
Evgeny Vetrov
@EvgenyVetrov
Nov 05 2016 11:16
Привет народ)
Есть вопрос по миграция и бд.. В бд есть оч крутая штука (ИМХО) комментарии к полям. Как через миграции можно добавить комменты к полям?
KarmaBot
@KarmaBot
Nov 05 2016 11:16
@EvgenyVetrov и тебе не хворать :)
JhaoDa
@jhaoda
Nov 05 2016 11:21
@EvgenyVetrov https://laravel.com/docs/5.3/migrations#column-modifiers и ни в чём себе не отказывай
Evgeny Vetrov
@EvgenyVetrov
Nov 05 2016 11:22
нашел
$table->string('product_name')->comment = "Product name column";
JhaoDa
@jhaoda
Nov 05 2016 11:23
Конечно, лучше «где-то» найти, чем в доке...
Dave
@aios
Nov 05 2016 12:11
Ребят подгоните нормального бота который трейды отправлять умеет. А то мне @am0nshi скинул - а там только по мылу без мобильного.
Yurij
@strotmann
Nov 05 2016 13:12
Ребята, привет!
KarmaBot
@KarmaBot
Nov 05 2016 13:12
@strotmann, и тебе привет ;)
Yurij
@strotmann
Nov 05 2016 13:13
Кто работал с интеркассой?
D3-FC
@D3-FC
Nov 05 2016 13:38
ПРивет всем
KarmaBot
@KarmaBot
Nov 05 2016 13:38
@D3-FC, ну рассказывай. Как жизнь? :)
D3-FC
@D3-FC
Nov 05 2016 13:38

А есть ли инстрмент для PHP тестирования:
задавать dataset в xml форме, а потом над тестом делать антоацию

@expectedDataset('путь к xml') 
public function testPatientCanBeSaved {

}

Данная анотация аналогична $this->seeInDatabase('patinets', array)

и также анотация

@dataset('путь к xml') // засидит записи из xml в базу
public function testPatientCanBeFind {

}
Роман Сохарев
@greabock
Nov 05 2016 13:56
@D3-FC это пишется за два часа
это еще с учетом времени на "подумать"
D3-FC
@D3-FC
Nov 05 2016 14:04
@greabock тем более может уже кто-то написал?)
@greabock и эти xml хорошобы с поддержкой dtd
для поддержки typehint
картинка
JhaoDa
@jhaoda
Nov 05 2016 14:06
@D3-FC ужс какой, заверни
D3-FC
@D3-FC
Nov 05 2016 14:07
@jhaoda а можно завернуть так чтобы кликабельно было?
JhaoDa
@jhaoda
Nov 05 2016 14:07
@D3-FC можно
D3-FC
@D3-FC
Nov 05 2016 14:07
@jhaoda как?
JhaoDa
@jhaoda
Nov 05 2016 14:07
@D3-FC маркдаун тебе в помощь
D3-FC
@D3-FC
Nov 05 2016 14:11
@jhaoda так ок?
:D
Evgeny Vetrov
@EvgenyVetrov
Nov 05 2016 14:25
а как в laravel.su публиковать статьи?
там можно писать статьи, а вот публиковать и делиться ими как?
Evgeny Vetrov
@EvgenyVetrov
Nov 05 2016 14:35
laravel.su это менее поддерживаемый сайт? (мне больше нравится :-) )
laravel.ru - основной?
Ivan
@Hunternnm
Nov 05 2016 14:35
@EvgenyVetrov это вообще разные вещи
Anton Kazakov
@venila
Nov 05 2016 14:38
@EvgenyVetrov тут все с laravel.su
Evgeny Vetrov
@EvgenyVetrov
Nov 05 2016 14:38
эмм как это разные)
Ivan
@Hunternnm
Nov 05 2016 14:39
@EvgenyVetrov ру один человек поддерживает
су - сообщество
Anton Kazakov
@venila
Nov 05 2016 14:39
Я когда только начал ларавел изучать, я сразу понял, что никогда и ничего на laravel.ru читать не буду. А все дело в дизайне, который очень говенный.
Evgeny Vetrov
@EvgenyVetrov
Nov 05 2016 14:40
+1
А все дело в дизайне, который очень говенный.
Только RU - куда более развит (за исключением дизайна)
а в SU не работают даже отображаемые функции
Anton Kazakov
@venila
Nov 05 2016 15:00
Что-то у меня с композерами какая-то проблема. Как его вызвать 1 раз если у меня 2 основных блейда? То есть, 1 блейд в котором весь код страницы, основной короче, а второй blade специально под сообщения.
в итоге: основа + основа под сообщения + входящие сообщения. В итоге, 3 блейда
Rahim
@happyhaha
Nov 05 2016 15:09
Всем привет!)
KarmaBot
@KarmaBot
Nov 05 2016 15:09
@happyhaha, ну рассказывай. Как жизнь? :)
Anton Kazakov
@venila
Nov 05 2016 15:11
Вот, если делать так View::composer('*' , то композер передается 3!!! раза , если взаимодействовано 3 шаблона.
@happyhaha привет
Arthur Boyko
@HomaEEE
Nov 05 2016 15:13
Привет всем. Нужна помощь с 5.3
KarmaBot
@KarmaBot
Nov 05 2016 15:13
Не узнал тебя, @HomaEEE. Богатым будешь :)
Ваня Devium
@webdevium
Nov 05 2016 15:14
@HomaEEE и?
Arthur Boyko
@HomaEEE
Nov 05 2016 15:14
Нужна 2-ая авторизация. (юсер админ)
Ваня Devium
@webdevium
Nov 05 2016 15:14
@HomaEEE че?
Arthur Boyko
@HomaEEE
Nov 05 2016 15:15
/User/login и /admin/login
Ваня Devium
@webdevium
Nov 05 2016 15:15
@HomaEEE и?
Arthur Boyko
@HomaEEE
Nov 05 2016 15:15
С юмором все понятно make:Auth
С юзером
Как сделать такую же для администратора
?
Ваня Devium
@webdevium
Nov 05 2016 15:16
Создай два роута, один для пользователя, другой для админа. В чем проблема?
Arthur Boyko
@HomaEEE
Nov 05 2016 15:16
И таблица админов отдельная
Ваня Devium
@webdevium
Nov 05 2016 15:18
Ну, раз у тебя две таблицы (нафига не пойму, конечно), тогдатебе нужно делать кастомную аутентификацию.
Arthur Boyko
@HomaEEE
Nov 05 2016 15:18
Именно. Есть какой то рабочий пример?
Для 5.3
Тот шлак что в сети простой дубль стандартной авторизации
Ваня Devium
@webdevium
Nov 05 2016 15:19
@HomaEEE ты не поверишь, но тебе этот шлак и надо использовать.
все, что тебе нужно:

1) роутинг
2) один метод для юзера, один для админа, если логика разная. Или вообще один метод, если все идентичное.
3) auth()->attempt()

профит.

D3-FC
@D3-FC
Nov 05 2016 15:23
@HomaEEE тебе вообще нужны permissions
очень подозреваю
юзер - есть юзер
не важно админ он или нет. admin это роль, которая может иметь набор пермишинов
Anton Kazakov
@venila
Nov 05 2016 15:27
Ребят, ответьте мне на мой вопрос , пожалуйста. Как через композер передать 1 раз во все блейды , которые вызываются за 1 раз. Это вообще возможно?
Ваня Devium
@webdevium
Nov 05 2016 15:27
Если ты правильно создашь композер, то эти данные будут всегда доступны во всех шаблонах.
Ivan
@Hunternnm
Nov 05 2016 15:27
@venila передавай в мастер
Но что-то сильно похоже на то, что что-то ты делаешь не так
JhaoDa
@jhaoda
Nov 05 2016 15:28
@webdevium с чего это вдруг?
Ivan
@Hunternnm
Nov 05 2016 15:28
У тебя там не соц.сеть?
Ваня Devium
@webdevium
Nov 05 2016 15:29
@jhaoda я вот один раз прокидываю $permissions в layout, и везде к ним напрямую обращаюсь.
JhaoDa
@jhaoda
Nov 05 2016 15:29
@webdevium ну так ты прокинул в корневой шаблон, поэтому и доступны
@venila https://laravel.com/docs/5.3/views#view-composers, предпоследний абзац
Ваня Devium
@webdevium
Nov 05 2016 15:29
@jhaoda а ему не так надо чтоли?
Oleksandr Solodovnikov
@age007nt
Nov 05 2016 15:30
Здравствуйте! Ребята, подскажите пожалуйста такое: хранить json в mysql нормально? В основном все ссылаются на проблемы с поиском данных в json, сортировками и т.д. Знаю и о денормализации БД. Но у Laravel есть удобная поддержка json. И собственно вопрос в том, есть ли смысл пользоваться json в mysql, или оно того не стоит? И если есть, то прошу разъяснить "рамки разумного использования". Благодарен заранее :)
KarmaBot
@KarmaBot
Nov 05 2016 15:30
Привет, @age007nt! Проходи, присаживайся. В ногах правды нет :)
JhaoDa
@jhaoda
Nov 05 2016 15:30
@webdevium откуда я знаю, как ему надо? Если у него нет базового шаблона, то твой вариант не катит
Ваня Devium
@webdevium
Nov 05 2016 15:31
@jhaoda ну, мой варик нормальный?
Anton Kazakov
@venila
Nov 05 2016 15:31
@Hunternnm public function register()?
в какой мастер?(
JhaoDa
@jhaoda
Nov 05 2016 15:31
@venila ты доку открой, да
Anton Kazakov
@venila
Nov 05 2016 15:31
@jhaoda открыл
Ваня Devium
@webdevium
Nov 05 2016 15:31
@age007nt с учетом того, что в современном mysql есть поддержка поля json, с поиском и шлюхами, то все норм.
Ivan
@Hunternnm
Nov 05 2016 15:31
@venila читай
@venila ты как шаблоны организовал?
Или для каждой страницы свой?
Anton Kazakov
@venila
Nov 05 2016 15:32
@Hunternnm создал MessageComposer
Ivan
@Hunternnm
Nov 05 2016 15:33
@venila я не про это спросил
blade файлы как?
Oleksandr Solodovnikov
@age007nt
Nov 05 2016 15:34
@webdevium то есть если использовать mysql версии 5.7.8+ (где введена нативная поддержка json) - можно пользоваться при нужде и это будет нормальным?
Ваня Devium
@webdevium
Nov 05 2016 15:35
@age007nt нормальным считается то, что в твоей задаче нормально работает. У тебя в json сложные данные хранятся?
Anton Kazakov
@venila
Nov 05 2016 15:35
@Hunternnm 2 основных шаблона. 1 глобальный, 2 под сообщения, 3 под входящие сообщения.
Ivan
@Hunternnm
Nov 05 2016 15:35
@venila вот при вызове глобального и дергай
JhaoDa
@jhaoda
Nov 05 2016 15:35
@venila что-то ты долго один несчастный абзац читаешь
Anton Kazakov
@venila
Nov 05 2016 15:36
@jhaoda я туда вызваю, в итоге во втором и третьем нет переменной этой
Oleksandr Solodovnikov
@age007nt
Nov 05 2016 15:36
@webdevium пока ничего не хранится, решил сперва спросить знающих людей.
JhaoDa
@jhaoda
Nov 05 2016 15:36
@venila что ты «туда вызываешь»?
Anton Kazakov
@venila
Nov 05 2016 15:37
@jhaoda View::composer(['*'], 'App\Http\ViewComposers\MessageComposer');
Ваня Devium
@webdevium
Nov 05 2016 15:37
@age007nt а что может быть будешь хранить?
Ivan
@Hunternnm
Nov 05 2016 15:37
@venila это что вообще?
Ты в курсе что у тебя выполняется запрос каждый раз при вызове любого шаблона?
Anton Kazakov
@venila
Nov 05 2016 15:38
@Hunternnm да.
я это и спрашиваю.
Oleksandr Solodovnikov
@age007nt
Nov 05 2016 15:38
@webdevium предполагалось хранить в json что то вроде title в разных языках, или например название ссылки и собственно сам url, при том что название опять же может быть в нескольких языках.
Ivan
@Hunternnm
Nov 05 2016 15:38
@venila ты не это спрашиваешь
@venila прочитай доку
Anton Kazakov
@venila
Nov 05 2016 15:39
@Hunternnm я ее 10 раз читал.
Ivan
@Hunternnm
Nov 05 2016 15:39
@venila читай 11
Ибо то, что ты хочешь - прямо по ссылке что дали выше
Ваня Devium
@webdevium
Nov 05 2016 15:39
@age007nt ну вот для multilang я бы что-то другое поюзал...
Anton Kazakov
@venila
Nov 05 2016 15:42
View::composer('dashboard', function ($view) через это?
Oleksandr Solodovnikov
@age007nt
Nov 05 2016 15:44
@webdevium на Хабрахабре читал статью, и сделал выводы что для моего проекта, в котором планируется не очень большая аудитория, и не огромное количество записей - что наилучшим способом хранения данных в разных языках будет хранить их в нескольких вариантах вместе. То есть в например в таблице news - title_ru, title_en ... Но допустим для хранения например текста новости - это как по мне нормально, так для названия статьи, или же названия ссылки - создавать отдельные поля не особо приятно :)
Andrei Sosnov
@atehnix
Nov 05 2016 15:44

@jhaoda

мигратор не умеет ходить по разным папкам

Почему же? Умеет..

Ваня Devium
@webdevium
Nov 05 2016 15:44
@age007nt создавать поля _lang - херовая идея
Oleksandr Solodovnikov
@age007nt
Nov 05 2016 15:45
@webdevium можно узнать почему? И было бы очень хорошо услышать альтернативный вариант.
JhaoDa
@jhaoda
Nov 05 2016 15:45
@atehnix это не мигратор умеет, а сервис-провайдер ему говорит о них по очереди
Andrei Sosnov
@atehnix
Nov 05 2016 15:47
@jhaoda хм.. я думал в этом и была задача.
Ваня Devium
@webdevium
Nov 05 2016 15:47
@age007nt ну сейчас у тебя два языка, а станет 5, а сущностей была одна, а стало 9. Сколько нужно будет добавить полей везде? Не очень идея.
@age007nt попробуй вариант с таблицей переводов
JhaoDa
@jhaoda
Nov 05 2016 15:48
@atehnix человек хотел, что бы мигратор сам это умел. Когда он разберется в модульности и поймет, что для каждого модуля надо делать сервис-провайдер, то вопрос отпадет, я думаю
Ваня Devium
@webdevium
Nov 05 2016 15:48
@age007nt например,
id | lang_id | object | object_id | translate
@age007nt это если костылить самому. Но лучше посмотри в сторону готовых решений, и используй во здравие)
Oleksandr Solodovnikov
@age007nt
Nov 05 2016 15:50
@webdevium есть что предложить?)
@webdevium с готовых решений?
Oleksandr Solodovnikov
@age007nt
Nov 05 2016 15:53
@webdevium спасибо за информацию и помощь, почитаю.
KarmaBot
@KarmaBot
Nov 05 2016 15:53
Спасибо (+1) для @webdevium принято! Текущая карма +70.
JhaoDa
@jhaoda
Nov 05 2016 15:56
@webdevium и зачем ты её завернул?
Ваня Devium
@webdevium
Nov 05 2016 15:57
@jhaoda ты хотел ее ткнуть?
Anton Kazakov
@venila
Nov 05 2016 15:57
@jhaoda Вы говорили что мне нужно сервис провайдер создать или что? Вы меня вообще окончательно запутали, я уже не знаю что делать...
JhaoDa
@jhaoda
Nov 05 2016 15:57
@venila где я тебе такое говорил?
@webdevium нет, я просто люблю, когда всё логично. Что надо, то заворачивается. Что не надо, то не заворачивается
Ваня Devium
@webdevium
Nov 05 2016 15:58
@jhaoda логично, когда логично.
Anton Kazakov
@venila
Nov 05 2016 15:59
@jhaoda забудь...
JhaoDa
@jhaoda
Nov 05 2016 15:59
@venila я и не вспоминал :)
Ivan
@Hunternnm
Nov 05 2016 16:00
@venila вот скажи, что лучше, за 5 минут прочитать доку или час тут спрашивать?
Anton Kazakov
@venila
Nov 05 2016 16:02
@Hunternnm хм. А может ты все таки поймешь, что я ее прочитал , не все до конца понял и прошу помощи у вас. Вы знаете в чем моя проблема, но вы мне даже и не собирайтесь ее говорить. Зачем вообще отвечать на любой вопрос, когда всегда можно ответить: "почитай, там все написано"
Nuzsk
@Nuzsk
Nov 05 2016 16:02
@venila у угнетателя бесполезно просить помощи )
Ivan
@Hunternnm
Nov 05 2016 16:03
@venila а может ты все-таки сформулируешь вопрос нормально? С примерами кода. Что где сделал
@Nuzsk да я такой
Максат
@maqsat
Nov 05 2016 16:07
Здравствуйте, как можно получить значения другого lang ? Например если App::isLocale('en') == en надо получить значения ru. Можно ли это?
KarmaBot
@KarmaBot
Nov 05 2016 16:07
@maqsat даров!
Ваня Devium
@webdevium
Nov 05 2016 16:08
@maqsat if en == en then locale = ru;
Anton Kazakov
@venila
Nov 05 2016 16:09
Ладно, в 5 раз формулирую вопрос. У меня есть запрос к бд , который должен проходить на каждой странице и передаваться это в переменую, которая в дальнейшем будет вызываться в бледах. Как я понял, это делается через composer. Но вот беда, когда я пытаюсь вызвать , вызывается она столько раз, столько блейдов было взаимодействованно при создании страницы. 3 blade = 3 запроса в бд. Создал я свой сервис провайдер , там такой код View::composer(['*'], 'App\Http\ViewComposers\MessageComposer');. В MessageComposer такой код http://dl2.joxi.net/drive/2016/11/05/0007/4093/503805/05/57bdba772f.jpg
Ivan
@Hunternnm
Nov 05 2016 16:10
@venila так вызывай только для основного шаблона, который вызывается на всех страницах и всё
Я реально НЕ понимаю проблему
Anton Kazakov
@venila
Nov 05 2016 16:11
View::composer(['app'], 'App\Http\ViewComposers\MessageComposer');
Ivan
@Hunternnm
Nov 05 2016 16:11
Пускай так, не знаю я названий твоих блэйдов
Anton Kazakov
@venila
Nov 05 2016 16:11
если ты про это, то это не будет работать. В самом app.blade сработает, в 2 дочерних переменной этой не будет
Ivan
@Hunternnm
Nov 05 2016 16:16
@venila вместо with - share
Anton Kazakov
@venila
Nov 05 2016 16:20
@Hunternnm в MessageComposer просто сделать так: View::share('messageCount', $count); ? Или нет? Просто так ошибку выбивает...
Ivan
@Hunternnm
Nov 05 2016 16:21
@venila сорри, не так написал. Вместо View::composer View::share
Anton Kartsev
@bigperson
Nov 05 2016 16:21
@venila Вчера я тот же вопрос спрашивал. Отмотай на денек назад.
Максат
@maqsat
Nov 05 2016 16:21
@webdevium я имею ввиду можно ли получить
trans('label.name') на русском
trans('label.name') на англ
сразу? то есть вместе
Anton Kazakov
@venila
Nov 05 2016 16:24
@Hunternnm я так пробовал и это не правильно...
Ivan
@Hunternnm
Nov 05 2016 16:24
@venila почему?
Anton Kazakov
@venila
Nov 05 2016 16:27
@Hunternnm View::share(['что тут передавать?'], 'App\Http\ViewComposers\MessageComposer');
Ivan
@Hunternnm
Nov 05 2016 16:29
@venila ты мне скажи зачем тебе одни и те же данные во всех темплейтах?
Ваня Devium
@webdevium
Nov 05 2016 16:30
@maqsat ковырни исходники trans() и поймешь, что туда можно передать нужную тебе локаль
Anton Kazakov
@venila
Nov 05 2016 16:32
@Hunternnm всегда в 1 шаблоне он должен вызываться, в 1 дочернем шаблоне он должен вызываться 4 раза.
Ivan
@Hunternnm
Nov 05 2016 16:33
@venila зачем??? Опиши задачу, ты явно что-то делаешь ой как не так
Anton Kazakov
@venila
Nov 05 2016 16:37
Реализую личную переписку. На каждой странице есть уведомление о новых сообщениях. Когда заходишь в сообщения, показывают все не прочитанные (а это тот же запрос что и уведомления о новых сообщениях)
понимаешь? А 2 одинаковых запроса в бд - не есть хорошо, как мне кажется. А вообще не 2, а 3 , сейчас покажу почему
Ваня Devium
@webdevium
Nov 05 2016 16:38
Я устал уже от этого композера...
Anton Kazakov
@venila
Nov 05 2016 16:39
@webdevium как бы ты знал , как он мне надоел)
Ivan
@Hunternnm
Nov 05 2016 16:39
@webdevium там с логикой приложения беда...
Ваня Devium
@webdevium
Nov 05 2016 16:39
@venila тут нельзя материться.
Ivan
@Hunternnm
Nov 05 2016 16:39
@venila мат убери
Ваня Devium
@webdevium
Nov 05 2016 16:39
@venila значит так: у тебя есть 100 разных блейдов. Есть?
Ivan
@Hunternnm
Nov 05 2016 16:40
@webdevium да у него 3 блэйда вообще. как- ХЗ!
Anton Kazakov
@venila
Nov 05 2016 16:40
@webdevium их 3.
Ivan
@Hunternnm
Nov 05 2016 16:40
@venila залей на гист и покажи код
Ваня Devium
@webdevium
Nov 05 2016 16:40
@venila а у них есть ОБЩИЙ layout?
Ivan
@Hunternnm
Nov 05 2016 16:40
@webdevium нету, я спрашивал уже
Ваня Devium
@webdevium
Nov 05 2016 16:41
во, хорошо.
@venila Сделай им общий лейаут, и будет тебе счатье. Перестань трахаться.
Максат
@maqsat
Nov 05 2016 16:42
@webdevium не могу найти , добавлю вторым параметром но ошибка выходить типа misssing
Ваня Devium
@webdevium
Nov 05 2016 16:43
@maqsat а че вторым?
Максат
@maqsat
Nov 05 2016 16:43
@webdevium trans('label.name','en')
@webdevium
ErrorException in Translator.php line 198:
Type error: Argument 2 passed to Illuminate\Translation\Translator::trans() must be of the type array, string given, called in C:\code\htdocs\server\trend.local\vendor\laravel\framework\src\Illuminate\Foundation\helpers.php on line 698 (View: C:\code\htdocs\server\trend.local\resources\views\system\country\edit.blade.php)
Anton Kazakov
@venila
Nov 05 2016 16:45
http://dl2.joxi.net/drive/2016/11/05/0007/4093/503805/05/c50fa7334c.jpg - зеленные, это мои blade. Крассные, те данные , которые повторяются
Ваня Devium
@webdevium
Nov 05 2016 16:45
@maqsat лезь в исходники trans(). Я вижу ты там не был.
Anton Kazakov
@venila
Nov 05 2016 16:45
И у меня есть основной blade, толка от него 0.
Максат
@maqsat
Nov 05 2016 16:53
@webdevium
trans($id = null, $parameters = [], $domain = 'messages', $locale = null)
trans(null,array(),'label.name', 'kk')
я там был но не получилось так
Ваня Devium
@webdevium
Nov 05 2016 16:55
@maqsat id - это ключ. Плохо был в документации. Проследи что дальше происходит.
Anton Kazakov
@venila
Nov 05 2016 17:18
не, это тупик. Слишком сложно...
У человека была такая же проблема, ему дали ответ, он понял - я нет
видать совсем тупой

```php
class MyCustomServiceClass {

protected $someData;

public function getSomeData()
{
    if(isset($this->someData)){

         return $this->someData;
    }

    return $this->someData = $this->calculateSomData();
} 

public function calculateSomData()
{
    return DB::table('some')->get();
}

}


```php
class SomeServiceProvider extends ServiceProvider {

    public function register()
    {
        $this->app->singleton(MyCustomServiceClass::class);
    }

}

в коде композера:

$someData = app(MyCustomServiceClass::class)->getSomeData();

это вроде то, что мне нужно

JhaoDa
@jhaoda
Nov 05 2016 17:21
@venila форматирование кода поправь
Максат
@maqsat
Nov 05 2016 17:22
@webdevium вы это имели ввиду Lang::get('label.name', array(), 'kk')
Anton Kazakov
@venila
Nov 05 2016 17:24
Я готов уже заплатить, чтобы эту задачу решили
Ваня Devium
@webdevium
Nov 05 2016 17:24
@maqsat попробовал?
Максат
@maqsat
Nov 05 2016 17:24
@webdevium да работает!!! а с trans как было?
Ваня Devium
@webdevium
Nov 05 2016 17:25
@maqsat в транс получает четыре параметра. Это подсказка :)
@maqsat старайся сам понять что и как
Максат
@maqsat
Nov 05 2016 17:26
@webdevium
trans($id = null, $parameters = [], $domain = 'messages', $locale = null)
trans(null,array(),'label.name', 'kk')
это же?
Максат
@maqsat
Nov 05 2016 17:33
@webdevium ссылку можно хотябы?
JhaoDa
@jhaoda
Nov 05 2016 17:38
@venila гражданин, писать без ошибок и оформлять код — это проявлять уважение к тем, кто читает. С первым у тебя нормально, реши второй вопрос, плиз.
Denis Burkin
@denisburkin
Nov 05 2016 19:03
Всем привет
KarmaBot
@KarmaBot
Nov 05 2016 19:03
Приветствую тебя, @denisburkin!
Ваня Devium
@webdevium
Nov 05 2016 19:03
привет
KarmaBot
@KarmaBot
Nov 05 2016 19:03
@webdevium, привет =)
Denis Burkin
@denisburkin
Nov 05 2016 19:04
может кто то в курсе? после подключения стандартной авторизации в 5,3 не могу использовать в роутинге имя dashboard
пишет
You don't have permission to access /dashboard/ on this server.
403
Ваня Devium
@webdevium
Nov 05 2016 19:05
у тебя папка в public есть dashboard?
Denis Burkin
@denisburkin
Nov 05 2016 19:05
блин точно спасибо
KarmaBot
@KarmaBot
Nov 05 2016 19:05
@denisburkin, в этом чате принято добавлять имя пользователя, чтобы его поблагодарить.
Denis Burkin
@denisburkin
Nov 05 2016 19:05
@webdevium спасибо !
KarmaBot
@KarmaBot
Nov 05 2016 19:05
Спасибо (+1) для @webdevium принято! Текущая карма +71.
Anton Kazakov
@venila
Nov 05 2016 19:49
Ребят, как заставить работать Auth::user()->id в \app\Services
Выбивает ошибку Trying to get property of non-object
Вот все что подключил
use Auth;
use App\Models\User;
Dave
@aios
Nov 05 2016 21:25
Все еще продолжаю искать руки для проекта на Laravel + SteamAPI
Denis Burkin
@denisburkin
Nov 05 2016 21:56
@aios что за проект ?
Dave
@aios
Nov 05 2016 22:45
@denisburkin в личку го
Evgeny Vetrov
@EvgenyVetrov
Nov 05 2016 23:04

Друзья, пытаюсь сделать простейший круд на sleeping owl . Создал простую таблицу со списком настроек (изначально она пустая и отображается в /admin/settings без единой записи. Решил создать первую настройку (первую запись в таблицу - она создалась, но при попытке выйти снова к первоначальной таблице /admin/settings уже по идее должна быть 1 строка, но выкидывает такую ошибку:

Illuminate \ Database \ Eloquent \ RelationNotFoundException
Call to undefined relationship [fundamental_settings] on model [App\Models\FundamentalSetting].

wtf? какие еще нахрел релейшоншипсы?? там 1 таблица самодостаточная

Evgeny Vetrov
@EvgenyVetrov
Nov 05 2016 23:16
нашел решение
/*->with('fundamental_settings')*/ ибо не нужно, так как юзаем туже модель о которой и создаем страницу в админке