These are chat archives for LaravelRUS/chat

14th
Dec 2015
Роман Сохарев
@greabock
Dec 14 2015 00:05
@jhaoda хз, проснулся чего-то
My-Account
@My-Account
Dec 14 2015 01:42
Извиняюсь за вопрос не по теме. Никто не пользовался на убунте usb-модемом (если точнее, то билайн)? Нормально работает или танцы с бубном?
Mikhail Donskoy
@mdnsk
Dec 14 2015 01:47
@My-Account должен работать.
My-Account
@My-Account
Dec 14 2015 01:48
@BaldaI , спасибо, попробую, думаю настроить можно по идее :-)
ooPASHAoo
@ooPASHAoo
Dec 14 2015 03:29
Подскажите пожалуйста как из модели получить многомерный массив с некоторыми свойствами. То есть из массива моделей сделать массив массивов с выбранными полями. Типа lists() только, что бы было больше значений
Rustam Vorontsov
@Rmfordev
Dec 14 2015 04:28
доброе утро
живые есть?
Роман Сохарев
@greabock
Dec 14 2015 04:34
@ooPASHAoo у коллекции Eloquent есть метод toArray() он последовательно вызывает метод toArray() на элементах коллекции (моделях). Таким образом, на самих моделях можно переопределить метод toArray(), так чтобы он делал то, что он, по твоему мнению, должен делать. Кроме того, рекомендую обратить внимание на такие свойства модели, как hidden и visible, не уверен влияют ли они на приведение к массиву, так же как на приведение к JSON, но стоит попробовать.
@Rmfordev доброго. Задавай сразу вопрос. А там кто сможет - тот ответит.
Rustam Vorontsov
@Rmfordev
Dec 14 2015 04:51
@greabock спасибо)
Ребят помогите через релейшен получить все дочерние категории, именно через релейшен, думаю это реально, категории id|title|pid есть релейшен child
/**
* @return \Illuminate\Database\Eloquent\Relations\HasMany
*/
public function child() {
    return $this->hasMany(self::class, 'pid', 'id');
}
Роман Сохарев
@greabock
Dec 14 2015 04:59
ну и в чем же собственно проблема?
Работай, как с обычным отношением
единственное замечание, методод называется child, а возврощает отношение HasMany. Очевидно, называться он должен children ))
Rustam Vorontsov
@Rmfordev
Dec 14 2015 05:09

@greabock ну да, согласен) да я пытался прогнать еще раз типо:

public function childRecursive()
    {
        return $this->child()->with('childRecursive');
    }

но после нужно запустить в цикле, но чет не выходит(

Роман Сохарев
@greabock
Dec 14 2015 05:09
@Rmfordev я тебя понял
тебе не дети нужны, а все потомки
Конечная, максимальная вложенность известна?
Rustam Vorontsov
@Rmfordev
Dec 14 2015 05:10
@greabock ограничения нет)
получается нужно всегда хранить в категории, всех дочерние категории, для того чтоб получить все товары из них для whereIn
Роман Сохарев
@greabock
Dec 14 2015 05:13
Мда... тогда тебе нужна какая-то из реализаций для древовидных структур Nested Sets, Materialized Path или Closure Table. А обычным Adjacency List этого не добиться
точнее это возможно, но запросами в цикле. А это плохо. Очень плохо.
Rustam Vorontsov
@Rmfordev
Dec 14 2015 05:14
@greabock воот, я могу обычно пробежать через foreach, но хотелось через релейшен, нюанс в том, что там уже все работает на обычном id|title|pid
Роман Сохарев
@greabock
Dec 14 2015 05:14
@Rmfordev все же определись, возможно существует некоторая конечная вложенность?
Rustam Vorontsov
@Rmfordev
Dec 14 2015 05:15
@greabock ну по логике, у них недолжно быть больше 2ух
@greabock ну опять же, менеджеры могут использовать и больше 2ух, так как это возможно
@greabock у меня хлебные крошки работают аналогично
Роман Сохарев
@greabock
Dec 14 2015 05:16
окей, значит так и пиши
Category::with('children.children.children.children');
четырех уровней, пади хватит? ))
Rustam Vorontsov
@Rmfordev
Dec 14 2015 05:17
@greabock вот посмотри как вывожу http://puu.sh/lURyf.png
@greabock вот нужно этот момент как то граманто прогрнать через while http://puu.sh/lURDh.png
@greabock я сначало сам сомневался, что будет работать, но работает, причем создавал для интереса штук 20 уровней, но у children опять есть нюанс там hasMany
Роман Сохарев
@greabock
Dec 14 2015 05:20
while - это луп. Запросы к бд в лупе - это зло в чистом виде.
Rustam Vorontsov
@Rmfordev
Dec 14 2015 05:21
@greabock я про Category::with('children.children.children.children’); знал, просто это тоже зло)
Роман Сохарев
@greabock
Dec 14 2015 05:21
Вовсе нет
всегда четрые запроса к бд,
Rustam Vorontsov
@Rmfordev
Dec 14 2015 05:22
@greabock ну даже когда можно сделать 1
Роман Сохарев
@greabock
Dec 14 2015 05:23
а в лупе ты потенциально можешь получить 100
даже когда можно было в 4 сделать
В любом случае, если тебя не устраивает решение через with() то тут помогут только настоящие деревья.
Возможные паттерны этих деревьев я уже перечислил выше
Rustam Vorontsov
@Rmfordev
Dec 14 2015 05:25
@greabock хз че делать)
Роман Сохарев
@greabock
Dec 14 2015 05:26
Есть еще решение, через рекурсивный билд запроса.
Но это тоже изврат
и все равно нужно знать конечную вложенность
Еще есть вариант на джоинах, но опять же нужно знать конечную вложенность, да и из результата этих джоинов собрать дерево - не для слабонервных занятие
Rustam Vorontsov
@Rmfordev
Dec 14 2015 05:27
@greabock ну да
@greabock поэтому и искал варианты с релейшеном
Роман Сохарев
@greabock
Dec 14 2015 05:28
в общем, все известные мне варианты работы с AL я изложил вот в этом материале
Rustam Vorontsov
@Rmfordev
Dec 14 2015 05:52
@greabock ты еще тут?
Роман Сохарев
@greabock
Dec 14 2015 05:52
@Rmfordev Ты пиши, пиши )
Rustam Vorontsov
@Rmfordev
Dec 14 2015 05:52
@greabock получился ананизм)
@greabock ну я так накидал, чтоб протестить http://puu.sh/lUTg8.png
@greabock 6 уровней создал - работает
Роман Сохарев
@greabock
Dec 14 2015 05:55
онанизм - происходит от имени Онан второго сына Иуды, который отказывался сношаться с женой. Пиши правильно )
Rustam Vorontsov
@Rmfordev
Dec 14 2015 05:56
@greabock ну так что думаешь?)
@greabock ананизм - по фрейду, вчера же обсуждали…)
Роман Сохарев
@greabock
Dec 14 2015 06:04
а нахрена ты айдишники то собираешь? ))
Rustam Vorontsov
@Rmfordev
Dec 14 2015 06:08
@greabock да я для примера)
Роман Сохарев
@greabock
Dec 14 2015 06:12

вообще проще всего, написать

protected $with = ['child'];

и забыть обо всем этом изврате, навсегда ))

butschster
@butschster
Dec 14 2015 06:15
@greabock не всегда же нужны все уровни :)
aleserche
@Aleserche
Dec 14 2015 06:16
а уровни можно регулировать? Например нужно только 2 уровня, не глубже
Роман Сохарев
@greabock
Dec 14 2015 06:17
Про уровни, мы уже выше все обсудили. Да и ссылка на метриал имеется.
Vitaly
@Modifikator
Dec 14 2015 06:17
кто как борется с исключениями при аякс запросах? TokenMismatchException
Роман Сохарев
@greabock
Dec 14 2015 06:17
@butschster безусловно, иначе бы я вообще этот вариант первым делом предложил )
@Modifikator подмешивать токен в заголовок запроса? Добавить скрытое поле token? Забить и отключить csrf для некоторых роутов (если это действительно необходимо)?
butschster
@butschster
Dec 14 2015 06:19
@greabock а еще join насколько мне известно имеет ограничение на кол-во в одном запросе, так что я бы это проверил :)
Роман Сохарев
@greabock
Dec 14 2015 06:19
@butschster это в настройках бд прописывется
джоины, и еще вложенность запрсов
butschster
@butschster
Dec 14 2015 06:20
ну вот здесь и кроются основные проблемы, когда нет доступа к настройкам
Vitaly
@Modifikator
Dec 14 2015 06:21
@greabock он есть в заголовке, но он видимо устаревает, как продлить жизнь токена?
Роман Сохарев
@greabock
Dec 14 2015 06:22
Я и не ратую за джоины и рекурсию на юнионах )) Я просто описал, тот факт, что так можно делать. При чем, про ограничения вложенности, я даже прям в материале отписался, что имеются ограничения )
@Modifikator токен живет столько, сколько живет сессия
Vitaly
@Modifikator
Dec 14 2015 06:32
хмм, чтото не сходится, у меня в настройках указано 'lifetime' => 1440, но сессия дохнет спонтанно, тоесть, похоже на N кол-во запросов и сессия мертва
Maxim
@Big-Shark
Dec 14 2015 06:58
карма
карма
KarmaBot
@KarmaBot
Dec 14 2015 06:59
@Big-Shark, Ваша карма +541. Вы благодарили 102 раз.
- Достижения: "Находчивый", "Любитель сладкого", "Благодетель", "Благодарный", "Нахлебник", "Рэмбо", "Вопрошайка"
- Профиль Big-Shark на laravel.su
aleserche
@Aleserche
Dec 14 2015 06:59
карма
KarmaBot
@KarmaBot
Dec 14 2015 06:59
@Aleserche, Ваша карма +1. Вы благодарили 1 раз.
- Профиль Aleserche на laravel.su
Роман Сохарев
@greabock
Dec 14 2015 07:03
карма
KarmaBot
@KarmaBot
Dec 14 2015 07:03
@greabock, Ваша карма +280. Вы благодарили 41 раз.
- Достижения: "Находчивый", "Любитель сладкого", "Благодетель", "Благодарный"
- Профиль greabock на laravel.su
jongleb
@jongleb
Dec 14 2015 07:34
Ребзи стоит ли ради подобных методов сервисы заводить или можно просто держать в моделях
class NewsService
{
    private $model;

    public function __construct(News $news)
    {
        $this->model = $news;
    }

    public function notModerated()
    {
        return $this->model
            ->where('is_moderated', 0)
            ->get()
            ->random(1);
    }
}
Vitaliy Kravchyshyn
@freevital
Dec 14 2015 08:03
@jongleb Не вижу смысла в отдельном сервисе. Что подтолкнуло к такому решению?
jongleb
@jongleb
Dec 14 2015 08:07
уходящий в пол список методов в модели
там и без того на каждое второе поле мутатор стоит
Vitaliy Kravchyshyn
@freevital
Dec 14 2015 08:10
@jongleb модель для таких методов и служит
Orion55
@orion55
Dec 14 2015 08:12
Привет
Vitaliy Kravchyshyn
@freevital
Dec 14 2015 08:14
Привет
Orion55
@orion55
Dec 14 2015 08:14
@jdiond как оно?
Vitaliy Kravchyshyn
@freevital
Dec 14 2015 08:17
@orion55 хорошо
Orion55
@orion55
Dec 14 2015 08:17
@jdiond :-)
Ivan
@Hunternnm
Dec 14 2015 08:25
кстати, кто тут магазин писал? как успехи?
jongleb
@jongleb
Dec 14 2015 08:25
@jdiond А если модели нужно залезть в другую?
@jdiond Ну скажем какие то действия еще после выборки произвести потом из дргой модели что то выбрать
@jdiond Любая в общем обработка, ээто тоже в моделях?
Vitaliy Kravchyshyn
@freevital
Dec 14 2015 08:26
@jongleb В контроллере получаешь результат и отдаешь другой модели из контроллера
jongleb
@jongleb
Dec 14 2015 08:28
@jdiond Ну а если нужно этоу логику получения дублировать?
Vitaliy Kravchyshyn
@freevital
Dec 14 2015 08:29
@jongleb Тогда в контроллере можна сделать метод для получения. Вообще, все зависит от контретного случая. Можна сделать и через репозиторий.
jongleb
@jongleb
Dec 14 2015 08:31
Но контроллеры ведь всего лишь работают с формочками
не более
какая же там логика
NelinD
@NelinD
Dec 14 2015 08:34
@Hunternnm работает, но рефакторить надо)
Ivan
@Hunternnm
Dec 14 2015 08:35
@NelinD не надо!!! начало рефакторинга == начало переписывания с нуля)))
знаем, проходили
NelinD
@NelinD
Dec 14 2015 08:39
@Hunternnm а без рефакторинга получим технический перегруз)
Ivan
@Hunternnm
Dec 14 2015 08:40
@NelinD знаешь как говорят -не так сложны первые 90% проекта, как вторые 90% проекта
Vitaliy Kravchyshyn
@freevital
Dec 14 2015 09:03
@jongleb при чем тут логика? Логика в модели. Контроллер выступает как "посредник".
Ivan
@Hunternnm
Dec 14 2015 09:04
оппа, а тут другие говорят что логика в контроллере)
Vitaliy Kravchyshyn
@freevital
Dec 14 2015 09:04
@jongleb и не только с формочками, более...
firstbit12
@firstbit12
Dec 14 2015 09:05
Всем привет!
NelinD
@NelinD
Dec 14 2015 09:05
@Hunternnm )
firstbit12
@firstbit12
Dec 14 2015 09:05
Кто-нибудь работал с dingo api?
У меня вопрос каким образом работает версионность? Как в клиенте указать какую версию апи использовать?
Dave
@aios
Dec 14 2015 09:07
@Hunternnm опять эти жиденькие цитатки.
Ivan
@Hunternnm
Dec 14 2015 09:07
@aios ?
Dave
@aios
Dec 14 2015 09:08
@Hunternnm ну про 90%
Ivan
@Hunternnm
Dec 14 2015 09:12
@aios жизненно(
Ivan
@Hunternnm
Dec 14 2015 09:51
тихо сегодня как-то... все работают?
firstbit12
@firstbit12
Dec 14 2015 09:54
@Hunternnm ага. вопрос задал - все молчат :(
Ivan
@Hunternnm
Dec 14 2015 09:54
@firstbit12 ну я с динго не работал, потому и молчу
jongleb
@jongleb
Dec 14 2015 10:18
Ребзи почему кука пустая скажите плиз
blob
что name что namer
Victor Golovko
@siptik
Dec 14 2015 10:32
@jongleb а ты глянь что в заголовках шлется
jongleb
@jongleb
Dec 14 2015 10:34
Заголовок как раз и начинается с этих кук
гугление подсказывает что крипт какой то нужен
чтот в доках правда не слово про это
jongleb
@jongleb
Dec 14 2015 10:40
да чтож такое то кука есть заголоовок есть а не берет
Victor Golovko
@siptik
Dec 14 2015 10:44
попробуй сделать
<?php dd(apache_request_headers());?>
глянь есть ли куки твои
@jongleb
jongleb
@jongleb
Dec 14 2015 10:48
И тут тоже есть
Victor Golovko
@siptik
Dec 14 2015 10:59
ну тогда какая то магия непонятная
@jongleb а если переименовать?
jongleb
@jongleb
Dec 14 2015 11:00
Да по всякому в том то и дело
$request->cookie('name, 'news');
вот так беру
и по всякому
кароче
Vitaly
@Modifikator
Dec 14 2015 11:02
а я вот не могу понять, почему сессия спонтанно дохнет
Victor Golovko
@siptik
Dec 14 2015 11:03
А я не могу понять почему не закрывается сокет соединение
Vitaly
@Modifikator
Dec 14 2015 11:03
@jongleb если так берешь, то не удивительно что нуль)
Ivan
@Hunternnm
Dec 14 2015 11:03
а я не могу понять почему у ЗП так мало нулей...
Victor Golovko
@siptik
Dec 14 2015 11:05
@Modifikator он делал дамп и там не было этой куки (вернее установлена была в null)
znack2
@znack2
Dec 14 2015 11:05
всем привет кто подскажет как сделать одну ссылку на удаление любых моделей? может какой туториал есть? @/all
Victor Golovko
@siptik
Dec 14 2015 11:06
@znack2 поясни
znack2
@znack2
Dec 14 2015 11:07
@siptik хочу сделать один метод на удаление любой модели(записи в таблице)
сейчас в каждом контроллере одинаковые методы
есть идея сделать в базовом контроллере метод использующий иньекцию из любого контроллера и потом удалять по id
Vitaliy Kravchyshyn
@freevital
Dec 14 2015 11:13
@jongleb в каком месте ты дампишь куку?
NelinD
@NelinD
Dec 14 2015 11:14
@jongleb не читая, задам вопрос, кука где ставится?
@jongleb если на клиенте, ты ее после дешифровки не получишь
@jongleb бери напрямую из rerbcjd
кукисов
Victor Golovko
@siptik
Dec 14 2015 11:17
@znack2
        $model = 'App\Models\$modelName';
       $data =  $model::all();
jongleb
@jongleb
Dec 14 2015 11:19
На клиенте да
ставлю на клиенте
znack2
@znack2
Dec 14 2015 11:20
@siptik ты меня немного не так понял /но мне уже подсказали как это сделать спасибо)
jongleb
@jongleb
Dec 14 2015 11:20
там просто надо запомнить последние выбранные данные, чтобы с них начать
в след раз
в общем при рендере странички понадобятся
Soprun Vladislav
@vlsoprun
Dec 14 2015 11:31
Всем привет :smile:
карма
NelinD
@NelinD
Dec 14 2015 11:36
@jongleb повторюсь после расшифровки куков, все что не подошло откючается как не безопасное, юзай напрямую массив кукисов
jongleb
@jongleb
Dec 14 2015 11:41
@NelinD Да пожалуй так и поступлю
@siptik @NelinD спасибо
Maxim
@Big-Shark
Dec 14 2015 11:41
Так, бот будет отдыхать, пока не придет @SerafimArts и все не починет, после того как все встанет на свои места, мы запустим пересчет кармы, и каждый получит по заслугам, так что незабываем говорить спасибо, и всем удачного дня)
jongleb
@jongleb
Dec 14 2015 11:41
@siptik @NelinD спасибо
еще хотел спросить, а какие есть более менее адекватные практики передачи данных на клиент?
Кроме того что сшаблонизировать между тегами скрипта и записывать в хайден инпут json
Maksim
@Stereotip42
Dec 14 2015 11:44
Парни, если нечаянно создал не нужную миграцию, пустую, но название точно такое же, как у предыдущей , как ее удалить? Файл удалить если , то в базе она лежит, вроде потом будет на отсутствие ругаться
как быть
Maxim
@Big-Shark
Dec 14 2015 11:45
@Stereotip22 в базе будет запись только если ты ее выполнил
если это локально, удали запись, и удали файл
Victor Golovko
@siptik
Dec 14 2015 11:45
@jongleb можешь запрашивать js скрипт
Gavrilov Ruslan
@shadowwzw
Dec 14 2015 11:45
This message was deleted
This message was deleted
я запрос написал такой
тут ничего эскейпить ведь нанадо да.
?
Maksim
@Stereotip42
Dec 14 2015 11:46
@Big-Shark точняк, в базе нету, спасибо
Gavrilov Ruslan
@shadowwzw
Dec 14 2015 11:46
тут автоматически все эскейпиться.
?
jongleb
@jongleb
Dec 14 2015 11:46
@siptik запрашивать?
Maxim
@Big-Shark
Dec 14 2015 11:46
@shadowwzw удоляй этот код, и заливай его на гист, а сюда кидай ссылку
@shadowwzw нет, ничего не надо
jongleb
@jongleb
Dec 14 2015 11:47
Не просто то есть
<script>
var a='{{$a->value}}';
</script>
Gavrilov Ruslan
@shadowwzw
Dec 14 2015 11:47
@Big-Shark окей спасибо_
Anton Vorontsov
@symbios-zi
Dec 14 2015 11:48
сделал трейт Imageble, подключаемый в моделях. Когда переношу в него акксессор, то аксессор перестает работать. Поясните, почему так
Victor Golovko
@siptik
Dec 14 2015 11:48

загрузилась страница

<sctipt src="script.php?id=3"></script>

@jongleb
а script.php?id=3 возвращает:

var a ={}

@jongleb
Maxim
@Big-Shark
Dec 14 2015 11:48
@shadowwzw ну так что с кодом?
Gavrilov Ruslan
@shadowwzw
Dec 14 2015 11:49
@Big-Shark удалил)
Maxim
@Big-Shark
Dec 14 2015 11:49
@symbios-zi потому что так должно быть.
@shadowwzw ок, так лучше)
Gavrilov Ruslan
@shadowwzw
Dec 14 2015 11:49
@Big-Shark всмысле потому что большой.
?
@Big-Shark большой код
Maxim
@Big-Shark
Dec 14 2015 11:50
@shadowwzw да, занимает весь жкран чата, и чат становится читать не удобно
Anton Vorontsov
@symbios-zi
Dec 14 2015 11:50
@Big-Shark вру, работает оказывается
Victor Golovko
@siptik
Dec 14 2015 11:50
@jongleb я так делаю когда данных много
Можно даже закешировать
Maxim
@Big-Shark
Dec 14 2015 11:51
ОМГ 70.2244 (((
Anton Vorontsov
@symbios-zi
Dec 14 2015 11:51
@Big-Shark чо за цифра?
Maxim
@Big-Shark
Dec 14 2015 11:52
@symbios-zi Счастливый ты человек ) Последний официальный курс на 15.12.2015
Victor Golovko
@siptik
Dec 14 2015 11:52
Использую Ractchet для чата. Когда пользователь закрывает браузер, то соединение на закрывается на сервере.
Даже если на клиенте закрыть соединение с помощью js, то все равно оно не закрывается
@Big-Shark 70.70
Anton Vorontsov
@symbios-zi
Dec 14 2015 11:53
@Big-Shark а, да блин, я в том году перед отъездом тоже парился, щас пофиг. Что зря нервничать
прямая взаимосвязь цены нефти и доллара
Victor Golovko
@siptik
Dec 14 2015 11:53
@Big-Shark нефть еще подешевеет.
Maxim
@Big-Shark
Dec 14 2015 11:53
@Hunternnm это не офф курс, а тот что сейчас торгуется
Gavrilov Ruslan
@shadowwzw
Dec 14 2015 11:53
кто зарплату в долларах получает наоборот радуется ,)
Maxim
@Big-Shark
Dec 14 2015 11:54
Я уже не радуюсь.
Anton Vorontsov
@symbios-zi
Dec 14 2015 11:54
рано или поздно нефть поднимется в цене
сейчас вся сланцевая нефть умрет
Maxim
@Big-Shark
Dec 14 2015 11:54
@symbios-zi думаю нет.
Anton Vorontsov
@symbios-zi
Dec 14 2015 11:54
@Big-Shark законы рынка, ресурс исчерпаемый, нужен всем
Victor Golovko
@siptik
Dec 14 2015 11:54
@symbios-zi и выход из кризиса займет лет 10
Maxim
@Big-Shark
Dec 14 2015 11:54
@symbios-zi сланец заявил что они при 5 баксах за барель будут в плюсе
Gavrilov Ruslan
@shadowwzw
Dec 14 2015 11:54
на зарубежный фриланс надо переходить и получать в долларах зарплату))
Anton Vorontsov
@symbios-zi
Dec 14 2015 11:55
@Big-Shark гонят, даже у обычной нефти нет такой себестоимости. сланец дороже
Victor Golovko
@siptik
Dec 14 2015 11:55
@shadowwzw зарплата в долларах не сделает тебя особо богаче (это не сделает тебя беднее)
Maxim
@Big-Shark
Dec 14 2015 11:55
@symbios-zi почему дороже? он более технологичный но легче в добыче.
Anton Vorontsov
@symbios-zi
Dec 14 2015 11:55
@Big-Shark с чего это легче, наоборот дороже
Victor Golovko
@siptik
Dec 14 2015 11:56

Использую Ractchet для чата. Когда пользователь закрывает браузер, то соединение на закрывается на сервере.
Даже если на клиенте закрыть соединение с помощью js, то все равно оно не закрывается

Так и должно быть?

Maxim
@Big-Shark
Dec 14 2015 11:56
@symbios-zi я читал что легче, так как он на поверхности
JhaoDa
@jhaoda
Dec 14 2015 11:56
@siptik повторяй каждые 5 минут
Maxim
@Big-Shark
Dec 14 2015 11:56
@siptik там таймаут вроде есть, и он его закроет чуть позже
@jhaoda ты как после того вина, жив, цел, орел?
Anton Vorontsov
@symbios-zi
Dec 14 2015 11:56

@Big-Shark

В среднем для 15 основных плеев в США себестоимость добычи сланцевой нефти составляет $30/барр, в Канаде — $35/барр. С учетом налогов цена безубыточности оценивается в $63/барр в среднем в США и $54/барр в Канаде.

JhaoDa
@jhaoda
Dec 14 2015 11:57
@Big-Shark ну как видишь
Victor Golovko
@siptik
Dec 14 2015 11:57
@jhaoda во, ты как раз мне и нужен)
Ivan
@Hunternnm
Dec 14 2015 11:58
как по мне так искусственно понижают цены
Maxim
@Big-Shark
Dec 14 2015 11:58
@Hunternnm дык это с самого начало известно
Ivan
@Hunternnm
Dec 14 2015 11:58
тарят у ИГ за копейки
Anton Vorontsov
@symbios-zi
Dec 14 2015 11:58
@Hunternnm нелегальная нефть из сирии и ирака. Че думаешь наши помогают в сирии, нам это должно окупиться
Ivan
@Hunternnm
Dec 14 2015 11:59
так заколебало всё это...
когда будет спокойствие на этом шарике?
Anton Vorontsov
@symbios-zi
Dec 14 2015 11:59
@Big-Shark глупый вопрос, есть свойство protected $appends = ['teaser']; хочу туда добавить еще элемент, но $this->appends[] = 'preview'; не работает
Maxim
@Big-Shark
Dec 14 2015 12:00
@symbios-zi попробуй сделай паблик
Victor Golovko
@siptik
Dec 14 2015 12:00
можешь дописать сеттер
Anton Vorontsov
@symbios-zi
Dec 14 2015 12:00
@Big-Shark в пределах этой же модели
Alexander Zhuravlev
@SCIF
Dec 14 2015 12:00
Для добавления принято именовать addSomething() сеттеры
А что тогда означает не работает?
Maxim
@Big-Shark
Dec 14 2015 12:01
@SCIF 0_0
@SCIF Ты то что тут забыл? )
Anton Vorontsov
@symbios-zi
Dec 14 2015 12:01
@SCIF ну возвращаемый json не содержит preview
Alexander Zhuravlev
@SCIF
Dec 14 2015 12:01
@Big-Shark: Ёпт. Ну кикни ещё :))
Так это у тебя сериализация не проходит
Anton Vorontsov
@symbios-zi
Dec 14 2015 12:02
@SCIF что за фигню несешь?
Alexander Zhuravlev
@SCIF
Dec 14 2015 12:02
@symbios-zi проблема в чём? В том, что при json_encode($model) у тебя нет этого свойства?
Anton Vorontsov
@symbios-zi
Dec 14 2015 12:02
@SCIF да
но если прямо в модели пишу
    /**
     * Append to json custom properties
     */
    protected $appends = ['preview', 'teaser'];
работает, как только выношу это в трейт, и подключаю трейт к модели, не работает
Alexander Zhuravlev
@SCIF
Dec 14 2015 12:05
@symbios-zi , речь про какой орм?
Anton Vorontsov
@symbios-zi
Dec 14 2015 12:06
@SCIF угадай с 1 раза
Maxim
@Big-Shark
Dec 14 2015 12:06
@symbios-zi а в трейте ты это в каком методе делаешь?
Anton Vorontsov
@symbios-zi
Dec 14 2015 12:06
@Big-Shark
   /**
     * Returns path to first image thumbnail
     * @return Accessor
     */
    public function getPreviewAttribute()
    {
        if($this->images->first()) {
            $this->appends[] = 'preview';
            return $this->images->first()->thumbnail;
        }
    }
Maxim
@Big-Shark
Dec 14 2015 12:06
@symbios-zi сделай
dump($this->appends);
$this->appends[] = 'preview';
dump($this->appends);
Alexander Zhuravlev
@SCIF
Dec 14 2015 12:07
@Big-Shark , я хочу допинать-таки этот долбанный интерактивный ввод в тесте. Там две дурацких проблемы — ни ларовский способ, ни симфоневский CommandTester не работают нормально. Вот зашёл на канал оркестра чтобы у @crynobone спросить
Ivan
@Hunternnm
Dec 14 2015 12:07
Пока тут всех много - таки где должна храниться логика? Модель или контроллер?
Maxim
@Big-Shark
Dec 14 2015 12:07
@Hunternnm вью
Anton Vorontsov
@symbios-zi
Dec 14 2015 12:07
@Hunternnm у меня сервисные классы, репозитории, хелперы
Alexander Zhuravlev
@SCIF
Dec 14 2015 12:07
@Big-Shark , dump таки в ларе нормально работает?
Maxim
@Big-Shark
Dec 14 2015 12:07
@SCIF ну давай)
Ivan
@Hunternnm
Dec 14 2015 12:07
@Big-Shark )))))))))) зачот
Maxim
@Big-Shark
Dec 14 2015 12:07
@SCIF а че ему не работать, это тупо функция)
@Hunternnm скажем так, пофиг где, главное чтобы она была тестируемой, и не дублировалась
Alexander Zhuravlev
@SCIF
Dec 14 2015 12:09
@Hunternnm , из сказанного @Big-Shark следует, что в сервисах ;)
Ivan
@Hunternnm
Dec 14 2015 12:10
))) просто сегодня ранее писали что логика должна быть в моделях)
Maxim
@Big-Shark
Dec 14 2015 12:10
@Hunternnm ну если прочитать про мвс, и ттук, то да, в моделях, но модель != ар
Ivan
@Hunternnm
Dec 14 2015 12:13
у всех своя метода, судя по всему
Alexander Zhuravlev
@SCIF
Dec 14 2015 12:13
@Big-Shark , AR? Или Orm?
Ivan
@Hunternnm
Dec 14 2015 12:13
про репозитории прочитал, проникся, пользую, спасибо @Big-Shark
Maxim
@Big-Shark
Dec 14 2015 12:13
@SCIF одна бойда
Alexander Zhuravlev
@SCIF
Dec 14 2015 12:13
Речь про репы чего?
Maxim
@Big-Shark
Dec 14 2015 12:14
@SCIF просто про репозитории куда ты пишешь запросы в орм моделям
Alexander
@evsign
Dec 14 2015 12:15

Подскажите плз можно ли как-то заинджектить объект из базы в контроллер?
я пробывал в сервис провайдере делать так

public function register()
    {
        $roleModule = Module::findByName('roles');
        $this->app->instance('RoleModule', $roleModule);

    }

Но вылазит ошибка Call to a member function connection() on a non-object, т.е. получается вроде как DatabaseServiceProvider не загрузился, но он стоит выше моего провайдера

Alexander Zhuravlev
@SCIF
Dec 14 2015 12:15
@sleeping-owl тут бывает?
Maxim
@Big-Shark
Dec 14 2015 12:15
@SCIF также часто как и ты
Alexander Zhuravlev
@SCIF
Dec 14 2015 12:16
@evsign , может меня поправят, но не midleware ли для этого созданы?
Alexander
@evsign
Dec 14 2015 12:18
@SCIF а как вернуть объект в контроллер? Там по идее только если в реквест засунуть
JhaoDa
@jhaoda
Dec 14 2015 12:23
@evsign я не вижу, где ты инжектишь объект в контроллер, я вижу только попытку запихать что-то в контейнер
Alexander
@evsign
Dec 14 2015 12:24
@jhaoda так я запихать то и не могу
@jhaoda в контроллере я в метод тайпхинтю RoleModule
JhaoDa
@jhaoda
Dec 14 2015 12:25
@evsign ты не понимаешь, как работает контейнер и DI
Это не вопрос, а утверждение, если чо
Alexander
@evsign
Dec 14 2015 12:25
:(
так а такое можно сделать вообще?
JhaoDa
@jhaoda
Dec 14 2015 12:26
@evsign для контейнера в данном случае RoleModule это просто строка. И если у тебя нет класса \RoleModule, то никакой тайпхинт не сработает
jongleb
@jongleb
Dec 14 2015 12:26
@siptik Не совсем понял, а как ты тиуда данные передаешь?
аааааа
понял он там уже запрос делает?
Alexander Zhuravlev
@SCIF
Dec 14 2015 12:27

@Big-Shark , ответил crynobone:

it's not something that even Laravel provides

Victor Golovko
@siptik
Dec 14 2015 12:27
@jongleb ты про js?
Maxim
@Big-Shark
Dec 14 2015 12:28
@SCIF печаль
@SCIF зайди на канал к симфони русский, и попытай там народ
jongleb
@jongleb
Dec 14 2015 12:28
@siptik Ну да, типа js уже в свою чоередь данные подгружает
Victor Golovko
@siptik
Dec 14 2015 12:28
да, это обычный метод контроллера, который отдает отформатированный js код
jongleb
@jongleb
Dec 14 2015 12:29
@siptik Блинс чтот не понял
Victor Golovko
@siptik
Dec 14 2015 12:33
например ты хочешь получить всех пользователей и передать их на клиент,
ты загруажаешь клиент, который грузит js:
<script src="/users"></script>

/users - метод контроллера , например JSController

function users(){
$users = Users::all()
return view('js/users')
}
ну и View 

var = users;
users {
<?php foreach users as user?>
{
'id'=>$user->id
},
<?endforeach?>
}
итого клиент получает сформированный JS
jongleb
@jongleb
Dec 14 2015 12:34
а понял
@siptik Спасибо
Victor Golovko
@siptik
Dec 14 2015 12:35
это когда нужно получить много информации, и если нужно, то можно закешировать
jongleb
@jongleb
Dec 14 2015 12:35
то есть в целом можно и просто прошалонизировать
,тоже не стремно?
Victor Golovko
@siptik
Dec 14 2015 12:36
не стремно. но если очень много инфы, то можно и так
Роман Сохарев
@greabock
Dec 14 2015 12:38
Добрый день/вечер, господа!
Victor Golovko
@siptik
Dec 14 2015 12:38
так работают некоторые апи
Роман Сохарев
@greabock
Dec 14 2015 12:40
Объявляю тот факт, что с января месяца я свободен, и открыт для предложений. Так что, если кто-то может мне посулить прибылью и занимательным проектом, то можно смело обращаться )
D3-FC
@D3-FC
Dec 14 2015 12:40
Привет всем. Подскажите, как получить колонки таблицы pivot при выборке?
Роман Сохарев
@greabock
Dec 14 2015 12:41
@D3-FC withPivot() очевидно
Victor Golovko
@siptik
Dec 14 2015 12:41
$user = App\User::find(1);

foreach ($user->roles as $role) {
    echo $role->pivot->created_at;
}
из доки
@D3-FC
Ivan
@Hunternnm
Dec 14 2015 12:42
@greabock вот ежели бы кто еще просто денег предлагал)
D3-FC
@D3-FC
Dec 14 2015 12:42
вроде делаю как в доке но не получается
$m->first()->providerBlanks->withPivot('tax')
Роман Сохарев
@greabock
Dec 14 2015 12:43
не так делаешь
D3-FC
@D3-FC
Dec 14 2015 12:44
@greabock можешь поправить?
NelinD
@NelinD
Dec 14 2015 12:44
@greabock ты закончил с игнайтером?)
Роман Сохарев
@greabock
Dec 14 2015 12:45
class SomeModel  extends Model{
   #...
          public function providerBlanks()
          {
                  return $this->belongsToMany(ProviderBlank::class)->withPivot('tax');
          }
   #...
}
таким образом, в списке полей пивота, появится и поле tax;
D3-FC
@D3-FC
Dec 14 2015 12:46
@greabock Спасибо. сам тоже к этому пришёл а не работало потому что tinker перезапустить надо было. чтобы изменения применились. Но всёравно спасибо
всё оказалось тривиально)))
Роман Сохарев
@greabock
Dec 14 2015 12:47
@NelinD не закончил, и не с Ыгнайтером ))
но закончу и с уём ))
Richcho54
@Richcho54
Dec 14 2015 13:31
Всем привет
Как реализовать разлогивание на всех устройствах при выходе?
Ivan
@Hunternnm
Dec 14 2015 13:37
Как можно наименьшим количеством запросов вытащить все категории и их дочерние записи? Всё в одной таблице, отличие по parent_id...
В цикле запросы лупить не фонтан(
в голову лезет 2 запроса - первый на выборку всех категорий, второй - через whereIn массив id из первого
Richcho54
@Richcho54
Dec 14 2015 13:40
@Hunternnm я вот так реализовывал:
    public function children()
    {
        return $this->hasMany('App\Category', 'parent_id')->orderBy('order', 'ASC');
    }
@Hunternnm это в модели Category
nikola166
@nikola166
Dec 14 2015 13:40
Используйте nestedset
Richcho54
@Richcho54
Dec 14 2015 13:41
@Hunternnm далее в контроллере так:
$cats = Category::where('parent_id','=',0)->with('children')->orderBy('order', 'asc')->get();
@Hunternnm можно вынести и в модель метод
Ivan
@Hunternnm
Dec 14 2015 13:42
@Richcho54 @nikola166 спасибо, сейчас соображу :)
ааа дурацкий смайл
nikola166
@nikola166
Dec 14 2015 13:42
Используйте nestedset, это лучшее решение
Ivan
@Hunternnm
Dec 14 2015 13:42
@nikola166 вот читаю сейчас
D3-FC
@D3-FC
Dec 14 2015 13:43

Подскажите, может есть какое-нибудь нативное решение без перебора foreach, для каждого объекта из списка найти его отношения.

Например. Объект Medicine у него есть отношения к ProviderBlank многие-ко-многим
по какому-то условию нахожу массив объектов Medicine из базы

public function filter(Request $request, Medicine $medicines)
    {

        $medicines = $medicines->where("какое-то условие");

        // вот тут надо произвести какую-то операцию чтобы в итоге для каждого medicine in medicines
// выполнить метод $medicine->providerBlanks
    }

Конечно можно сделать через foreach

    public function filter(Request $request, Medicine $medicines)
    {

        $medicines = $medicines->where('geoName', $request->input('geoName'));
        foreach ($medicines as $medicine) {
            $medicine->providerBlanks;
        }
// тут упаковать в новый массив и вернуть его.
        return 
    }

но может есть какой-нибудь нативный метод вларе о котором не знаю?

Ivan
@Hunternnm
Dec 14 2015 13:44
@nikola166 https://github.com/lazychaser/laravel-nestedset это подходит или лучше самому писать?
asvae
@asvae
Dec 14 2015 13:55
@D3-FC Medicine::where('some', 'word')->providerBlanks().
nikola166
@nikola166
Dec 14 2015 13:56
@Hunternnm я использую kalnoy/nestedset
@Hunternnm а вообще можете взять любой нормальный пакет
Роман Сохарев
@greabock
Dec 14 2015 13:58
Господа, простите, но вы все какую-то бабуйню советуете товарищу
@D3-FC
$medicines->with('providerBlanks')->get();
Richcho54
@Richcho54
Dec 14 2015 14:00
@greabock как разлогиниться на всех устройствах ?
Maxim
@Big-Shark
Dec 14 2015 14:02
@Richcho54 пока нет такого функционала вроде
D3-FC
@D3-FC
Dec 14 2015 14:02
@greabock Спасибо. второй раз за день выручаешь)
Maxim
@Big-Shark
Dec 14 2015 14:02
@greabock а еще есть тот способ что я предлагал, который делает по запросу на каждый урвоень)
Роман Сохарев
@greabock
Dec 14 2015 14:05
@Richcho54 вот здесь (laravel/framework#2444) обсуждался, этот вопрос. Чем закончилось обсуждение - не знаю, у меня тогда надобность в этом отпала.
NelinD
@NelinD
Dec 14 2015 14:07
@greabock о, грибок
Роман Сохарев
@greabock
Dec 14 2015 14:07
@NelinD слушаю тебя, спора ))
NelinD
@NelinD
Dec 14 2015 14:07
@greabock го в лс)
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:35
карма
ну отлично
Maxim
@Big-Shark
Dec 14 2015 14:35
@SerafimArts он ждет тебя)
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:35
а ты доступ починил?
я с работы не могу рестартнуть
Maxim
@Big-Shark
Dec 14 2015 14:36
@SerafimArts дык его ченить надо, он отваливается по несколько раз в день
@SerafimArts я его и не включал, написал что ждем тебя. а потом пересчет)
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:36
дык надо логи смотреть
Maxim
@Big-Shark
Dec 14 2015 14:36
@SerafimArts будешь дома, глянь) у меня кстати норм конектится из дома, и у тебя норм из дома, так что думаю на работе у тебя странности, вот)
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:37
лол
а в группе друпала всё ок
=)
Maxim
@Big-Shark
Dec 14 2015 14:37
@SerafimArts ниче там не ок
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:38
окок
могу на 10 рублей поспорить
и тут тоже всё ок
Maxim
@Big-Shark
Dec 14 2015 14:40
@SerafimArts ага, он просто отдыхает)
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:40
не правда
он трудится
Maxim
@Big-Shark
Dec 14 2015 14:40
@SerafimArts также как ты)
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:40
я?
а что я?
кстати я починил
трайкетчем тем
просто теперь логов нету
:D
Maxim
@Big-Shark
Dec 14 2015 14:41
@SerafimArts круто поченил)
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:42
2015-12-10 11:07:08
последний эксепшн
Maxim
@Big-Shark
Dec 14 2015 14:42
@SerafimArts также как тесты сделал)
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:42
теперь он отваливается вообще в непонятных местах
и не дебажится вообще никак
:D
Maxim
@Big-Shark
Dec 14 2015 14:42
@SerafimArts нет логов, нет проблемм)
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:42
угу
всё ок
как у тебя там крон настроить?
будет каждые 5 минут проверять процесс
отрублю трайкетч этот
Maxim
@Big-Shark
Dec 14 2015 14:43
также как у всех) crontab -e
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:43
я хз
у меня персональный админ для этих целей =)
говоришь фигани на сюда, он ок и всё готово
@Big-Shark на шедулер натравишь?
можно даже раз в минуту
@Big-Shark ping
пересчёт запустил
jongleb
@jongleb
Dec 14 2015 14:47
Ребзи!!А есть ли какие то правила хорошего тона принаписании апи?
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:48
@jongleb есть
Maxim
@Big-Shark
Dec 14 2015 14:48
@SerafimArts дык сделай сам, не маленький же)
jongleb
@jongleb
Dec 14 2015 14:48
например если я хочу сджойненный элемент получить то должен его укеазть после второго слеша(мое наблюдение)
/comments/user
Ivan
@Hunternnm
Dec 14 2015 14:48
карма
KarmaBot
@KarmaBot
Dec 14 2015 14:48
@Hunternnm, Ваша карма +35. Вы благодарили 59 раз.
- Достижения: "Находчивый", "Благодарный", "Нахлебник"
- Профиль Hunternnm на laravel.su
jongleb
@jongleb
Dec 14 2015 14:48
так верно выглядит, если я хочу получть комментрий и юзера?
или обычно даже такие дейтсвия декомпозируют на два запроса
Maxim
@Big-Shark
Dec 14 2015 14:49
@jongleb ну а ты гуглил на эту тему?
jongleb
@jongleb
Dec 14 2015 14:49
да
ну симпл апи всякие попадались
и ограничивались тупыми CRUD и РЕСТ
Maxim
@Big-Shark
Dec 14 2015 14:49
@jongleb http://jsonapi.org/ на
jongleb
@jongleb
Dec 14 2015 14:50
@Big-Shark Спасибо!
KarmaBot
@KarmaBot
Dec 14 2015 14:50
Спасибо (+1) для @Big-Shark принято! Текущая карма +32.
Ivan
@Hunternnm
Dec 14 2015 14:50
2500 челов в руме
Maxim
@Big-Shark
Dec 14 2015 14:50
круто, можно снова начинать двигаться к 500)
Ivan
@Hunternnm
Dec 14 2015 14:50
ничо так
карма)
Maxim
@Big-Shark
Dec 14 2015 14:50
угу, неплохо
Ivan
@Hunternnm
Dec 14 2015 14:51
карма
KarmaBot
@KarmaBot
Dec 14 2015 14:51
@Hunternnm, Ваша карма +5. Вы благодарили 7 раз.
- Достижения: "Находчивый", "Благодарный", "Нахлебник"
- Профиль Hunternnm на laravel.su
jongleb
@jongleb
Dec 14 2015 14:51
Год есть чату?
я то где то тут уже пол года залипаю
Maxim
@Big-Shark
Dec 14 2015 14:51
@jongleb больше
Ivan
@Hunternnm
Dec 14 2015 14:51
я чота больше месяца вроде как
активно относительно
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:51
@Big-Shark мне ещё пых надо переставлять
jongleb
@jongleb
Dec 14 2015 14:51
никак самое крупный чат из всех
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:51
не мучай меня
Maxim
@Big-Shark
Dec 14 2015 14:52
@SerafimArts накой?
@jongleb из русских да.
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:52
@Big-Shark там же RC
а надо релизный апнуть
Maxim
@Big-Shark
Dec 14 2015 14:53
А я с 11 февраля 2014 года )
Ivan
@Hunternnm
Dec 14 2015 14:53
старичОк
блин, нужно на js скринсейвер написать... ааааа ппц
jongleb
@jongleb
Dec 14 2015 14:54
на канвасе
Ivan
@Hunternnm
Dec 14 2015 14:54
wince 5.1
ie 5
порезаный по самые яйца
jongleb
@jongleb
Dec 14 2015 14:55
:D
Кстати если кому интересно то WebRTC работает на андроиде! и лару взял за сигнальный сервер
Ivan
@Hunternnm
Dec 14 2015 14:55
240*320 экран
kimigori
@kimigori
Dec 14 2015 14:56
Подскажите, формирую в java script вывод формы. Есть такая строка tableHTML += '<td>' + income.created_at + '</td>'; как вывести дату в формате день месяц год (12 Dec 2015)
?
jongleb
@jongleb
Dec 14 2015 14:56
@Hunternnm WebView?
Ivan
@Hunternnm
Dec 14 2015 14:56
неее
девайс на wince... прайсчекер
jongleb
@jongleb
Dec 14 2015 14:56
А я видимо криво загуглил, это же джпс?
Ivan
@Hunternnm
Dec 14 2015 14:56
убогая штука с 32 ОП и 600мгц процом
неа
Kirill Nesmeyanov
@SerafimArts
Dec 14 2015 14:57
всё, я ушёл
чуть позже всё же апну пых, хоть и стрёмно
jongleb
@jongleb
Dec 14 2015 14:58
@Hunternnm все понял , я думал там по новей ишаки стоят
JhaoDa
@jhaoda
Dec 14 2015 14:59
WCE 6.0 во времена оны уже была старьем, а там ещё и 5.1...
Ivan
@Hunternnm
Dec 14 2015 15:27
хм, чота я межуюсь между пакетами для nested sets... чота разные они
asvae
@asvae
Dec 14 2015 15:34

Ребят, знает кто насчет преимуществ (если таковые имеются) foo-bar видных хтмл аргументов перед foobar-видными. Это добавляет минусов поисковику или попросту вкусовщина?

Пример:

<custom-element foo-bar="some data"></custom-element>
<custom-element foobar="some data"></custom-element>
JhaoDa
@jhaoda
Dec 14 2015 15:36
@Asvae data-foobar, data-foo-bar — и никак иначе
Ну ещё можешь myns:foo-bar, myns:foobar
asvae
@asvae
Dec 14 2015 15:38
@jhaoda и чем грозит непослушание?
JhaoDa
@jhaoda
Dec 14 2015 15:38
@Asvae кармическим возданиянием :)
Ivan
@Hunternnm
Dec 14 2015 15:39
карма
KarmaBot
@KarmaBot
Dec 14 2015 15:39
@Hunternnm, Ваша карма +5. Вы благодарили 7 раз.
- Достижения: "Находчивый", "Благодарный", "Нахлебник"
- Профиль Hunternnm на laravel.su
Ivan
@Hunternnm
Dec 14 2015 15:39
ээээ
какое 5)
Maxim
@Big-Shark
Dec 14 2015 15:39
карма
KarmaBot
@KarmaBot
Dec 14 2015 15:39
@Big-Shark, Ваша карма +32. Вы благодарили 22 раз.
- Достижения: "Находчивый", "Любитель сладкого", "Благодетель", "Благодарный", "Нахлебник", "Рэмбо", "Вопрошайка"
- Профиль Big-Shark на laravel.su
Maxim
@Big-Shark
Dec 14 2015 15:39
Все норм, не переживай)
Ivan
@Hunternnm
Dec 14 2015 15:39
да я не переживаю )
asvae
@asvae
Dec 14 2015 15:39
@jhaoda я тихонько спрячу в темплейте. Никто не увидит :3.
Ivan
@Hunternnm
Dec 14 2015 15:39
ппц, только понедельник а карма уже испорчена)
jongleb
@jongleb
Dec 14 2015 15:43
public function hasNotModeratedComment()
    {
        return $this->whereHas('commentableEntity', function ($q) {
            $q->whereHas('comment', function ($q) {
                $q->where('is_moderated', 0);
            });
        });
    }

    public function commentUser()
    {
        return $this->with(array('commentableEntity' => function ($q) {
            $q->with(array('comment' => function ($q) {
                $q->with('author');
            }));
        }));
    }

Хотел по методам раскидать действия, словил трейс!

$model->commentUser()
            ->hasNotModeratedComment()
            ->first()

Call to undefined method Illuminate\Database\Query\Builder::hasNotModeratedComment()

JhaoDa
@jhaoda
Dec 14 2015 15:43
карма
KarmaBot
@KarmaBot
Dec 14 2015 15:43
@jhaoda, Ваша карма +49. Вы благодарили 3 раз.
- Достижения: "Находчивый", "Любитель сладкого", "Благодетель", "Рэмбо"
- Профиль jhaoda на laravel.su
jongleb
@jongleb
Dec 14 2015 15:43
в чем я не прав?
JhaoDa
@jhaoda
Dec 14 2015 15:43
Деноминация, штоле?
Maxim
@Big-Shark
Dec 14 2015 15:43
@jhaoda ага, нули сократили)
JhaoDa
@jhaoda
Dec 14 2015 15:45
@jongleb return $this->with
Ivan
@Hunternnm
Dec 14 2015 15:45
карма
KarmaBot
@KarmaBot
Dec 14 2015 15:45
@Hunternnm, Ваша карма +5. Вы благодарили 7 раз.
- Достижения: "Находчивый", "Благодарный", "Нахлебник"
- Профиль Hunternnm на laravel.su
Maxim
@Big-Shark
Dec 14 2015 15:45
@jongleb ну у тебя виз я так понял вернет билдер, а не квери билдер
Ivan
@Hunternnm
Dec 14 2015 15:45
ачивки то остались)
Maxim
@Big-Shark
Dec 14 2015 15:45
@Hunternnm все будет, не переживай)
JhaoDa
@jhaoda
Dec 14 2015 15:45
@Big-Shark чем билдер отличается от квери билдера?:)
jongleb
@jongleb
Dec 14 2015 15:45
Ну да а потом я из контроллера уже
 ->first()
вызову
This message was deleted
Maxim
@Big-Shark
Dec 14 2015 15:46
@jhaoda тьфу ты, конечно от жлоквоент билдера
JhaoDa
@jhaoda
Dec 14 2015 15:46
@jongleb чувак, ты тут не первый месяц, а ошибки уровня «я изучаю ларавель всего неделю»
jongleb
@jongleb
Dec 14 2015 15:46
а
понял
все)
@jhaoda Спасибо
KarmaBot
@KarmaBot
Dec 14 2015 15:46
Спасибо (+1) для @jhaoda принято! Текущая карма +50.
JhaoDa
@jhaoda
Dec 14 2015 15:47
@Big-Shark пересчет будет, когда Серафим до дома доберется и похапе апнет?
Maxim
@Big-Shark
Dec 14 2015 15:48
@jhaoda а хз, он както запустим пересчет же) Я ничего не трогал) Да и бота он стартанул, так что я хз.
Ivan
@Hunternnm
Dec 14 2015 15:52
что из нового можно про репозиторий прочитать? а то на ларавел.ру что-то старое видение...
jongleb
@jongleb
Dec 14 2015 16:03
public function hasNotModeratedComment()
    {
        return $this->belongsTo('App\CommentableEntities')->whereHas('comment', function ($q) {
            $q->where('is_moderated', 0);
        });
    }

    public function commentUser()
    {
        return  $this->belongsTo('App\CommentableEntities')->with(array('comment' => function ($q) {
            $q->with('author');
        }));
    }
Может я конечно что то не правильно понял
JhaoDa
@jhaoda
Dec 14 2015 16:04
@jongleb чувак, 2016-й год на носу, хватит писать array()
jongleb
@jongleb
Dec 14 2015 16:05
Так не влияет же не на что
Maxim
@Big-Shark
Dec 14 2015 16:05
@jongleb чувак, 2016-й год на носу, хватит писать 'App\CommentableEntities'
JhaoDa
@jhaoda
Dec 14 2015 16:05
А это что
with(array('comment' => function ($q) {
            $q->with('author');
        }));
    }
jongleb
@jongleb
Dec 14 2015 16:06
ну так а разднциа между () и []
и 'App\CommentableEntities' и ::class
Роман Сохарев
@greabock
Dec 14 2015 16:06
карма
KarmaBot
@KarmaBot
Dec 14 2015 16:06
@greabock, Ваша карма +29. Вы благодарили 6 раз.
- Достижения: "Находчивый", "Любитель сладкого", "Благодетель", "Благодарный"
- Профиль greabock на laravel.su
Maxim
@Big-Shark
Dec 14 2015 16:06
@jongleb короче, красивей, иде понимает лучше
Роман Сохарев
@greabock
Dec 14 2015 16:06
что за...
JhaoDa
@jhaoda
Dec 14 2015 16:06
Я, конечно, могу чего-то не понимать, но разве это не эквавалентно ->with('comment.author')?
Maxim
@Big-Shark
Dec 14 2015 16:06
@jhaoda эквивалентно
jongleb
@jongleb
Dec 14 2015 16:06
О как , спасибо
KarmaBot
@KarmaBot
Dec 14 2015 16:06
@jongleb, в этом чате принято добавлять имя пользователя, что бы его поблагодарить.
Maxim
@Big-Shark
Dec 14 2015 16:07
@greabock всем карму на 10 +-1 поделили, все норм)
Роман Сохарев
@greabock
Dec 14 2015 16:07
где мой кармический эквивалент фаллоса
jongleb
@jongleb
Dec 14 2015 16:07
@jhaoda Спасибо за замечание
KarmaBot
@KarmaBot
Dec 14 2015 16:07
Спасибо (+1) для @jhaoda принято! Текущая карма +51.
jongleb
@jongleb
Dec 14 2015 16:07
но все таки
JhaoDa
@jhaoda
Dec 14 2015 16:07
@jongleb в твоем коде не хочется ковыряться
jongleb
@jongleb
Dec 14 2015 16:07
трейс не ушел( что я не так делаю
JhaoDa
@jhaoda
Dec 14 2015 16:07
Ибо отдаёт...
jongleb
@jongleb
Dec 14 2015 16:15
там сейчас пакорабан
$model->whereHas('commentableEntity', function ($q) {
                $q->with('hasNotModeratedComment');
            })
            ->with('commentUser')
            ->first();
Ибо починил я
Maxim
@Big-Shark
Dec 14 2015 16:17
омг, я бы за такое именование, руки поотрывал бы
JhaoDa
@jhaoda
Dec 14 2015 16:17
@jongleb видишь? Не один я считаю, что твой код смердит :)
А то мне иногда прям неудобно, что наезжаю и наезжаю...
Хотя чо я вру, удобно :)
Maxim
@Big-Shark
Dec 14 2015 16:18
хаха
jongleb
@jongleb
Dec 14 2015 16:18
commentUser на commentWithUser
не спорю
JhaoDa
@jhaoda
Dec 14 2015 16:20
@jongleb как выглядит связь commentUser?
jongleb
@jongleb
Dec 14 2015 16:20
Коммент принадлежит автору
JhaoDa
@jhaoda
Dec 14 2015 16:21
@jongleb я ваще-та про описание в коде
Maxim
@Big-Shark
Dec 14 2015 16:21
@jongleb а как на английском это пишется?
jongleb
@jongleb
Dec 14 2015 16:22
Намек понял!
JhaoDa
@jhaoda
Dec 14 2015 16:22
Да ничо ты не понял...
Maxim
@Big-Shark
Dec 14 2015 16:29

а как вы относитесь к такой фигне

if ($transaction = func(...)) {

?

JhaoDa
@jhaoda
Dec 14 2015 16:30
@Big-Shark плохо, ибо не понятно, зачем такое?
jongleb
@jongleb
Dec 14 2015 16:30
для throw?
Maxim
@Big-Shark
Dec 14 2015 16:30
@jhaoda вот и мне непонятно, и очень сбивает взгляд
@jongleb что?
jongleb
@jongleb
Dec 14 2015 16:42
А есть ли возможность так же как при взятие $request->get() брать в блейде а не к приватным свойствам обращаться {{$item->someRelated->someRelated2}}
Тоже гетером
Maxim
@Big-Shark
Dec 14 2015 16:42
Блин ну ты хоть сам понимаешь что спрашиваешь?
JhaoDa
@jhaoda
Dec 14 2015 16:43
@Big-Shark ну ты же знаешь ответ, зачем спрашиваешь?:)
Maxim
@Big-Shark
Dec 14 2015 16:44
@jhaoda пора переставать это делать)
jongleb
@jongleb
Dec 14 2015 17:28
Поробую еще раз потому что нагуглить не смог.
Есть ли возможность получать из коллекции гетерами данные а не обращаясь в приватные свойства $item->previous($item->commentableEntity->comment->id)
Maxim
@Big-Shark
Dec 14 2015 17:28
@jongleb ты вообще знаешь что такое приватное свойство?
jongleb
@jongleb
Dec 14 2015 17:29
Ну
private $property;
asvae
@asvae
Dec 14 2015 17:35
@jongleb расскажи подробней. Опусти, что уже есть. Напиши, что хочешь получить.
карма
KarmaBot
@KarmaBot
Dec 14 2015 17:37
@Asvae, Вас ещё никто не благодарил.
- Профиль Asvae на laravel.su
asvae
@asvae
Dec 14 2015 17:37
@KarmaBot ну офигеть.
asvae
@asvae
Dec 14 2015 17:44
А за что карма бот банан получил?
Maxim
@Big-Shark
Dec 14 2015 17:45
@Asvae это давно было
asvae
@asvae
Dec 14 2015 17:46
@Big-Shark матом ругался?
Maxim
@Big-Shark
Dec 14 2015 18:07
@Asvae спамил
Ivan
@Hunternnm
Dec 14 2015 20:17
карма
@Hunternnm спасибо
спит(
Victor Golovko
@siptik
Dec 14 2015 20:51
@jhaoda а ты случаем не в курсах есть ли возможность узнать дошло ли сообщение до клиента? (хочу сделать статус для непрочитанных как unread)
типа как событие onDelivered
или это нужно опять отправлять запрос на сервак, что сообщение прочитанно/доставлено
JhaoDa
@jhaoda
Dec 14 2015 20:54
@siptik ну ты же понимаешь, что «доставлено» ≠ «прочитано»?
Victor Golovko
@siptik
Dec 14 2015 20:56
да, ты прав. фигню придумываю)
@jhaoda спасибо
Э
JhaoDa
@jhaoda
Dec 14 2015 20:57
@siptik я не знаю, как это наш фронтэндер делал
Но по факту «прочтения» на сервер уходит запрос и сообщение отмечается как прочтённое
Victor Golovko
@siptik
Dec 14 2015 20:57
ну я тоже так прикинул
JhaoDa
@jhaoda
Dec 14 2015 20:58
Вроде бы на активацию вкладки/окна реагирует, если чат открыт
Victor Golovko
@siptik
Dec 14 2015 20:58
вот это ближе к делу. но опять же доставлено» ≠ «прочитано»
JhaoDa
@jhaoda
Dec 14 2015 20:59
И если чат прокручен куда-то, что нового сообщения не видно, то, соответственно, на прокрутку к нему
@siptik ну мы не ВК и ФБ, нам и так сгодилось :)
Victor Golovko
@siptik
Dec 14 2015 20:59
а я на свою голову так начал делать))
JhaoDa
@jhaoda
Dec 14 2015 20:59
А ваще не вникал, бо не моя задача была
Victor Golovko
@siptik
Dec 14 2015 20:59
ибо есть список приватных сообщений и нужно указывать статус
JhaoDa
@jhaoda
Dec 14 2015 20:59
Или я вообще к тому моменту уволился...
Victor Golovko
@siptik
Dec 14 2015 20:59
(выделять цветом)
http://storage5.static.itmages.com/i/15/1214/h_1450126855_7719819_5a3e33edaf.png
типа так
это сам чат
@jhaoda а много юзеров в чате было?
JhaoDa
@jhaoda
Dec 14 2015 21:04
@siptik это р2р чатик
Victor Golovko
@siptik
Dec 14 2015 21:09
@jhaoda ясно. меня просто беспокоит, что автоматом не закрывается соединение, когда пользователь ушел
Gavrilov Ruslan
@shadowwzw
Dec 14 2015 22:09
права на запись нужно только на папку storage и все?
еще нашел что на всю папку vendor надо ? оО
версию 5.0
версия у меня 5.0
лишних прав на запись не особо хочеться давать)
кто что думает.
?
My-Account
@My-Account
Dec 14 2015 22:14

Всем привет. Подскажите как не обновлять updated_at в каком-то конкретном действии. Делаю такое:

class MyModel extends Model {

public $timestamp = true;

public static function someMethod()
{
     self::$timestamp == false;   //????
    MyModel::update(['SomeField' => 'SomeValue']);
}

}

Думаю, что я неправильно делаю, но пока на этом примере не могу понять как лучше.

Vitaliy Kravchyshyn
@freevital
Dec 14 2015 22:18
@My-Account как по мне нормальное решение. Можна еще через мутатор сделать, если есть определенные условия

@My-Account

public $timestamp = true;

можна убрать. Оно по-умолчанию true

@My-Account

self::$timestamp = false;

"=" вместо "=="

My-Account
@My-Account
Dec 14 2015 22:21
@jdiond через мутатор можно сделать для какого-то конкретного действия? Как, в доках не нашел?) Это почитаю, спасибо. А вот с self::$timestamp == false;

Access to undeclared static prorerty
@jdiond понял. Спасибо !)
Vitaliy Kravchyshyn
@freevital
Dec 14 2015 22:22
@My-Account для какого-то конкретного условия, а не действия
@My-Account В общем, все зависит от действия и задачи. Можна через мутатор, можна в методе. Это нормальный вариант
My-Account
@My-Account
Dec 14 2015 22:24

@jdiond ясно, еще раз спасибо. Пока поборюсь с ошибкой

Access to undeclared static prorerty

на self::$timestamp = false;

Vitaliy Kravchyshyn
@freevital
Dec 14 2015 22:26
@My-Account static::$timestamp
My-Account
@My-Account
Dec 14 2015 22:28

@jdiond , ответ один

Access to undeclared static prorerty: App\MyModel::$timestamp

Сейчас разберусь !)

JhaoDa
@jhaoda
Dec 14 2015 22:30
Потому что оно нифига не статик
@My-Account зачем писать static::, если метод в контексте?
Vitaliy Kravchyshyn
@freevital
Dec 14 2015 22:32
ахх, да
needforknowledg
@needforknowledg
Dec 14 2015 23:06
Поможите с авторизацией для сайта?
У меня на главной есть две формы. Авторизация и Регистрация
Роутер Route::controller('/', 'HomeController');
Как сделать авторизацию. Читал статьи но плохо понял как сделать авторизацию для моего случая
Askar
@tenzan
Dec 14 2015 23:09
Всем привет. Кто-нибудь пробовал создать real-time чат на Laravel5? И насколько это трудно, или может быть стало легче с Laravel5?
JhaoDa
@jhaoda
Dec 14 2015 23:44
@needforknowledg не авторизация, а аутентификация. И я не понимаю, что у тебя за особый такой случай.
@tenzan стало легче. Вроде бы. Я делал только на четвёрке.
Victor Golovko
@siptik
Dec 14 2015 23:56
@tenzan как раз делаю ))
и уже успел надоеть нашему другу по чату @jhaoda
:)
Askar
@tenzan
Dec 14 2015 23:59
@jhaoda @siptik Ясненько. Мне вот всегда любопытно спрашивать у ларавелов, пользовались вы когда-н Ruby on Rails?