These are chat archives for LaravelRUS/chat

23rd
Dec 2014
lordonx3
@lordonx3
Dec 23 2014 00:17
Как обновить 4ку? vagrant использую
Maxim
@Big-Shark
Dec 23 2014 00:17
также как и всегда)
композером
lordonx3
@lordonx3
Dec 23 2014 00:21
php composer.phar update
Оно, или нет?
Maxim
@Big-Shark
Dec 23 2014 00:21
угу
lordonx3
@lordonx3
Dec 23 2014 00:22
Could not open input file: composer.phar
Видимо не от туда запускаю
Maxim
@Big-Shark
Dec 23 2014 00:23
ну может у тебя композер глобально стоит
MaD
@maddog670
Dec 23 2014 00:27
php composer update
Maxim
@Big-Shark
Dec 23 2014 00:27
у меня просто composer update )
lordonx3
@lordonx3
Dec 23 2014 00:29
php composer update
Черт, не то
Вот, сам файл есть, а ругается что нету.
Maxim
@Big-Shark
Dec 23 2014 00:30
ты понимаешь что композер жсон и композер лок это не тоже самое что композер фар?
lordonx3
@lordonx3
Dec 23 2014 00:34
Да уже заметил, что то протупил
MaD
@maddog670
Dec 23 2014 00:35
@Big-Shark кстати и у меня работает без приставки php. А я писал вечно с ней) :D
Maxim
@Big-Shark
Dec 23 2014 00:35
@maddog670 вагрант?
MaD
@maddog670
Dec 23 2014 00:36
нет
Maxim
@Big-Shark
Dec 23 2014 00:36
вин? линь? мак?
MaD
@maddog670
Dec 23 2014 00:37
вин
Maxim
@Big-Shark
Dec 23 2014 00:37
тогда хз как у вас там все)
MaD
@maddog670
Dec 23 2014 00:38
@Big-Shark у меня работает и с php и без нее. Просто говорю не знал, что можно без php обновлять и всегда писал с php)
Maxim
@Big-Shark
Dec 23 2014 00:40
@maddog670 ну у меня он стоит как глобальный, и по этому я могу вызывать его как обычную команду (кстати я папку коспозер глобал я тоже в глобал запихнул и все что ставлю глобально могу вызывать автоматом) и я понимаю как это работает на линукс машинах, но по какому принцепу работает командная строка на винде, я не могу сказать, наверное примерное также)
а блогодаря zsh еще и авто дополнения для композера работает по табу)
MaD
@maddog670
Dec 23 2014 00:42
@Big-Shark у меня тоже всё это там стоит, а что за zsh?
MaD
@maddog670
Dec 23 2014 00:44
это на линь?
увидел
Maxim
@Big-Shark
Dec 23 2014 00:48
угу
собственно наверное терминал и косяки с вагрант меня и допекли и я снова вернулся на линь)
lordonx3
@lordonx3
Dec 23 2014 01:49
Если кто юзает OSX, подскажите IDE, саблайм не выдает нормальных подсказок, но зато работает быстро. PHP Shtorm дает подсказки, но почему то у меня нереально тупит. Есть еще алтернативы? Чтобы и работало быстро, и были нормальные подсказки, и вообще среда была удобной
Maxim
@Big-Shark
Dec 23 2014 02:07
нет)
Я раньше пользовался саблаймом, сейчас саблайм + шторм
саблайм для быстрого редактирования, а шторм для открыл и работаешь весь день
lordonx3
@lordonx3
Dec 23 2014 02:13
Еще интересную штуку заметил, если в саблайме не закрыт "?>" то подсказок можно и не ждать :)
Maxim
@Big-Shark
Dec 23 2014 02:17
эмм, а его и не обязательно закрывать
точней даже не рекомендуется
lordonx3
@lordonx3
Dec 23 2014 02:19
Я понимаю, сейчас пример покажу о чем я
Например если не закрыт
То подсказок к коду не будет, только подсветка синтаксиса
А если его закрыть (решил затестить просто), тогда пойдут подсказки
Или это как то можно настроить?
Maxim
@Big-Shark
Dec 23 2014 02:20
хе, не замечал, потому что никогда не закрываю)
даже хз, думаю можно, но надо думать)
попробуй загуглить
lordonx3
@lordonx3
Dec 23 2014 02:21
У вас тоже самое?
Maxim
@Big-Shark
Dec 23 2014 02:25
У меня одинокого не подсказывает нифига нормального)
Хотя нет, он подсказывает несмотря на закрытый или не закрытый тэг
кстати поставил пхпинтел он сделал папку и начал туда закидывать файлы на каждый файл сохраненный, хз зачем, раньше такого небыло
но подсказки у меня работают только при попытки вызвать функции из этого же файла, из родительского не показывает функцию
lordonx3
@lordonx3
Dec 23 2014 02:29
Тоже SublimeIntelCore
Поставил себе
С подсказками все довольно хорошо стало
Maxim
@Big-Shark
Dec 23 2014 02:29
я поставил саблайминтелкор и пхп интел
но у меня иде хелпер не стоит, так как мне кажется саблайм точно не раскурит его нормально)
lordonx3
@lordonx3
Dec 23 2014 02:31
С IDE хелпером только названия методов появятся, подробного их описания как в PHP Shtorm не будет, проверил)
Maxim
@Big-Shark
Dec 23 2014 02:31
включил в готовом проекте авто индексирование пхп файлов и саблайм подвис)
lordonx3
@lordonx3
Dec 23 2014 02:31
А как включить авто индексирование php файлов?
Maxim
@Big-Shark
Dec 23 2014 02:31
ну уже что-то)
управления пакетами, там выбираешь интел, дефолтный конфиг, всамый низ крутиш, там будет чтото типа пхп авто индекс фолс
Maxim
@Big-Shark
Dec 23 2014 03:25
Я так и не заставил саблайм нормально выдавать подсказки)
Maxim
@Big-Shark
Dec 23 2014 04:24
Кто знает почему шторм распространяется через скачку и установку, а не через репозиторий как весь остальное софт?
Andrew
@bitw
Dec 23 2014 04:51
@lordonx3 у меня PHP Storm на маке очень шустро работает.
попробуй NetBeans https://netbeans.org/downloads/index.html тоже хорошая IDE до шторма на ней работал
slider23
@slider23
Dec 23 2014 04:55
нетбинс тоже на джаве и принципиально меньше тормозить не будет.
Роман Сохарев
@greabock
Dec 23 2014 05:06
добра!
slider23
@slider23
Dec 23 2014 05:25
бобра !
slider23
@slider23
Dec 23 2014 06:44
Первый регистратор доменов, который сделал такое: http://cli.gandi.net/
slider23
@slider23
Dec 23 2014 06:51
Тем временем в паралельной вселенной https://twitter.com/kohanaphp/status/547252724786806784
amigosprogdoc
@amigosprogdoc
Dec 23 2014 07:03
Добра!
Alina Soboleva
@AlinaSob
Dec 23 2014 07:38
Не проснулась еще, прочитала вместо "Don't worry, we're still alive" - "We're sorry.... " )))
Задумалась...
Sergey Gladkovskiy
@smgladkovskiy
Dec 23 2014 07:39
:) Появились энтузиасты-некрофилы?
Роман Сохарев
@greabock
Dec 23 2014 07:59
а мне нравилась кохана
если бы чуть оптимизировать hmvc... (слишком накладно полный рантайм для вложений повторять) то было бы вполне жизнеспособно
Thomas Anderson
@elvendor
Dec 23 2014 08:30
Всем привет большущий!! Здорово, что сообщество живет и процветает :)
Ray Mayemir
@raymayemir
Dec 23 2014 08:36
Всем привет
Brezhnev Ivan
@vanchelo
Dec 23 2014 08:51
Привет
@elvendor давно тебя не было) в Турцию уехал?
Thomas Anderson
@elvendor
Dec 23 2014 08:53
много чего было, женился вот в ноябре, 29-го в Турцию ) лару забросил на пару месяцев, сейчас вот пытаюсь восстановить все в памяти)
у вас случайно своего Laracon'а не было? :)
Роман Сохарев
@greabock
Dec 23 2014 08:53
Поздравляю!
Thomas Anderson
@elvendor
Dec 23 2014 08:54
@greabock спасибо!
amigosprogdoc
@amigosprogdoc
Dec 23 2014 08:54
@elvendor Поздравляю.
Thomas Anderson
@elvendor
Dec 23 2014 08:55
спасиб)
Orel
@2byte
Dec 23 2014 08:56
@elvendor Мои поздравления!! ))
Роман Сохарев
@greabock
Dec 23 2014 08:56
да нет, ничего такого... с тех пор как маккул нас посетил, ничего крупного не было. Правда ребята вот скайп-встречи c трансляцией делают. Но как-то жидковато )
amigosprogdoc
@amigosprogdoc
Dec 23 2014 08:56
Моя жена говорит, что Laravel красивое название) но дочку так назвать отказалась)))
Роман Сохарев
@greabock
Dec 23 2014 08:56
XD
amigosprogdoc
@amigosprogdoc
Dec 23 2014 08:56
где ..когда?
slider23
@slider23
Dec 23 2014 08:57
@elvendor поздравляю, теперь держись, совместная жизнь - дело трудное и ответственное
у нас же всё по-старому
Brezhnev Ivan
@vanchelo
Dec 23 2014 08:57
@elvendor Поздравляю. успехов вам)
Thomas Anderson
@elvendor
Dec 23 2014 08:58
@amigosprogdoc :D собачку заведу, будет Ларой :)
спасибо ребят :)
amigosprogdoc
@amigosprogdoc
Dec 23 2014 08:58
@elvendor хочу собачку..но кабеля.
Thomas Anderson
@elvendor
Dec 23 2014 08:59
одному мне структура грядущей версии лары не нравится? ((
Роман Сохарев
@greabock
Dec 23 2014 08:59
@amigosprogdoc мне всегда казалось что Ларавель мужского рода )
Thomas Anderson
@elvendor
Dec 23 2014 08:59
главное не назови кобеля Тэйлором ))
slider23
@slider23
Dec 23 2014 08:59
@elvendor @SerafimArts от новой структуры тоже не в восторге. Мне как-то ок.
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:00
всегда можно сделать как в 4-ке
slider23
@slider23
Dec 23 2014 09:00
@greabock в рунете ларавель уже устойчиво стал ларой, тренд не поменять.
Thomas Anderson
@elvendor
Dec 23 2014 09:00
@slider23 ну что ж, будем привыкать)
lordonx3
@lordonx3
Dec 23 2014 09:01
@amigosprogdoc с кобелями много проблем, даже если овчарку брать, проверенно на опыте :)
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:01
не соглашусь
Orel
@2byte
Dec 23 2014 09:01
@elvendor это с первого взгляда, а потом поставишь, посмотришь, вроде норм
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:03
@lordonx3 с женщинами головняка намного больше чем с кабелями овчарками
с собаками всё более менее понятно, кто кого должен слушать)
lordonx3
@lordonx3
Dec 23 2014 09:04
@vanchelo ну да, агрессивных особо опастных кобелей усыпляют, с девушками так нельзя :D
Thomas Anderson
@elvendor
Dec 23 2014 09:05
мы вот тоже подумываем о хаски..
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:05
с ними вообще никак нельзя, если на юридическую сторону посмотреть)
зато им с нами всё можно)
Роман Сохарев
@greabock
Dec 23 2014 09:06
ребят, почему не уничтожается переменная сессии?
if(Session::has('success'))
{
    View::share('success', Session::pull('success'));
}
lordonx3
@lordonx3
Dec 23 2014 09:06
@vanchelo в USA есть штат, где раз в месяц можно "воспитывать" жену
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:06
)))
это против того что мужей они воспитывают круглый год, нормально))
Orel
@2byte
Dec 23 2014 09:07

У меня вот на сервере какой то софт китайский lnmp - nginx + apache + php5.5 + mysql, в конструкторе контроллера вставляю классы

function __construct(
        Search $search,
        SongRepository $songRepository,
        SongListRepository $songListRepository,
        ArtistRepository $artistRepository,
        MetaRepository $metaRepository
    )
    {
        $this->search = $search;
        $this->songRepository = $songRepository;
        $this->songListRepository = $songListRepository;
        $this->artistRepository = $artistRepository;
        $this->metaRepository = $metaRepository;
    }

У меня исполняется конструктор Search, думаю остальные тоже, так-как первый в таком случаи кидает исключение.

Brezhnev Ivan
@vanchelo
Dec 23 2014 09:07
@greabock откуда знаешь что не уничтожается?
проверил у себя, уничтожается
Session::put('xxx', 'xxx');
var_dump(Session::pull('xxx')); // string(3) "xxx"
var_dump(Session::pull('xxx')); // NULL
Роман Сохарев
@greabock
Dec 23 2014 09:11
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:12
это при втором запросе?
Роман Сохарев
@greabock
Dec 23 2014 09:12
вообще повисло и висит =(
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:12
ты переменную ведь шаришь во вьюху
Роман Сохарев
@greabock
Dec 23 2014 09:12
@if(isset($success))
        <div class="alert alert-success">{{ $success }}</div>
@endif
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:13
покажи как ты пишешь в сессию
Роман Сохарев
@greabock
Dec 23 2014 09:14
  return Redirect::back()->with('success', trans('stroage.parameter_save_success'));
Видимо происходит что-то неочевидное
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:17
попробуй подебажить
Роман Сохарев
@greabock
Dec 23 2014 09:17
хм...
Роман Сохарев
@greabock
Dec 23 2014 09:19

что характерно

@if(Session::has('success'))
        <div class="alert alert-success">{{ Session::pull('success') }}</div>
@endif

работает правильно...

я чего-то не понимаю...
я бы вообще так и делал, но у меня верстальщик от функций в шаблонах перегорает и начинает плеваться...
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:21
т.е. чисто переменные должны быть в шаблоне?
Роман Сохарев
@greabock
Dec 23 2014 09:21
типа того
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:22
а как на счет route() old() и т.п.?
Роман Сохарев
@greabock
Dec 23 2014 09:22
ничего подобного
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:22
)
slider23
@slider23
Dec 23 2014 09:23
а какая ему разница ?
Роман Сохарев
@greabock
Dec 23 2014 09:24
ой, не спрашивай меня...
я с ним полгода воюю уже
lordonx3
@lordonx3
Dec 23 2014 09:24
Может он естет )
*эстет
Роман Сохарев
@greabock
Dec 23 2014 09:24
^ вот он как раз через "е"
это мы бы с ним в офисе работали, я бы его на пиво пригласил, провел работу разъяснительную...
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:27
=)
slider23
@slider23
Dec 23 2014 09:28
для него же это просто строки. он там боится какую-то скобочку случайно удалить, что ли ?
Роман Сохарев
@greabock
Dec 23 2014 09:32
вообще у него верстка на промышленном потоке, он очень много верстает, очень быстро и очень аккуратно, системно.
помимо моего проекта у него еще штук пять от моего же работодателя. При том на совершенно разных платформах, и соответственно разных шаблонизаторах. Отчасти я его понимаю.
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:34
кто редис под окнами использует?
slider23
@slider23
Dec 23 2014 09:36
я, но он у меня из опенсервера стартует сам
Роман Сохарев
@greabock
Dec 23 2014 09:37
^аналогично
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:37
ясно)
у меня пишет что ему виртуальной памяти не хватает, у меня виртуалка отключена
slider23
@slider23
Dec 23 2014 09:37
можно самому стартовать, но у меня не получалось его как сервис запустить. Только в отдельном окне терминала
своп отключен ?
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:38
ага
slider23
@slider23
Dec 23 2014 09:38
включи обратно, винда умная
если не надо, писать не будет
читал пост одного инженера из майкрософт, сути не помню, помню вывод
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:39
пишут что от свопа ssd умирает быстро
slider23
@slider23
Dec 23 2014 09:39
что своп отключать не надо
ну поставь своп на hdd
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:39
))) у меня на ноуте один носитель)
slider23
@slider23
Dec 23 2014 09:40
ну сделай его тогда мегов 200
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:40
думаешь диску плохо не станет?
slider23
@slider23
Dec 23 2014 09:40
у меня своп на ssd всегда был
Sergey Gladkovskiy
@smgladkovskiy
Dec 23 2014 09:40
Если памяти много, можно сделать RAM диск и туда пхать своп...
slider23
@slider23
Dec 23 2014 09:41
старый ссд до сих пор живой
а у новых ресурс значительно выше стал
имхо, можно не париться
Sergey Gladkovskiy
@smgladkovskiy
Dec 23 2014 09:41
но восьмёрка как-то более аккуратно работает с ссд
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:41
значит включу) у меня 7-ка
slider23
@slider23
Dec 23 2014 09:41
уж 200 мег точно не убьют весь диск
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:42
под виндой можно рам диск создать?
Sergey Gladkovskiy
@smgladkovskiy
Dec 23 2014 09:43
да
у меня когда не было ссд, я туда пихал папку в которой Chrome хранил свою инфу. Ускоряло его работу хорошенько...
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:44
удобно
In fact, given typical pagefile reference patterns and the favorable performance characteristics SSDs have on those patterns, there are few files better than the pagefile to place on an SSD.
кто переведет дословно?
я понял что для ссд несколько файлов лучше чем один своп файл
Роман Сохарев
@greabock
Dec 23 2014 09:46
а я недавно взял ссд
доволен очень
учитывая, что взял я его как раз перед падением рубля
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:47
ssd must have)
slider23
@slider23
Dec 23 2014 09:48
если редис ругается на отсутствие свопа, надо просто сделать своп. Можно крохотный. Ну убьет он, то только эти мегабайты. Остальные же ячейки останутся. А ресурс у ячейки памяти, а не у диска.
не будет же его носить по всему ссд
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:49
вроде бы ссд пишет по всему диску
devillom
@devillom
Dec 23 2014 09:49
Привет всем,
Brezhnev Ivan
@vanchelo
Dec 23 2014 09:49
а если уже нет свободных ячеек то пишет на места ячеек удаленных файлов
Роман Сохарев
@greabock
Dec 23 2014 09:50
@devillom и тебе привет
devillom
@devillom
Dec 23 2014 09:50
Можете помочь с выводом pivot таблиц уже везде искал как грамотно сделать не нашол
amigosprogdoc
@amigosprogdoc
Dec 23 2014 09:51
?
Роман Сохарев
@greabock
Dec 23 2014 09:53
ну код, ну вижу. В чем проблема-то? )
devillom
@devillom
Dec 23 2014 09:53
2014-12-23 15-52-18 Скриншот экрана.png
amigosprogdoc
@amigosprogdoc
Dec 23 2014 09:53
у вас там я так понимаю контакты сейчас выводятся без связи с юзерами
devillom
@devillom
Dec 23 2014 09:53
Нужно поставить значения уже имеющие
на инпуты
amigosprogdoc
@amigosprogdoc
Dec 23 2014 09:54
$contacts = $user->contact;
foreach ( $contacts as $contact) {
тут получаем контакты
}
devillom
@devillom
Dec 23 2014 09:55
если сделать так то не все поля выведутся на странице
amigosprogdoc
@amigosprogdoc
Dec 23 2014 09:55
вроде как то так)
а зачем belongsToMany ?
devillom
@devillom
Dec 23 2014 09:56
Ну это дополнительные поля
amigosprogdoc
@amigosprogdoc
Dec 23 2014 09:56
ну..и...
пивот для многое ко многим..
а вас я там понимаю один к одному..максимум один ко многим
devillom
@devillom
Dec 23 2014 09:56
2014-12-23 15-56-04 Скриншот экрана.png
2014-12-23 15-56-50 Скриншот экрана.png
amigosprogdoc
@amigosprogdoc
Dec 23 2014 09:57
аа....хм.
Роман Сохарев
@greabock
Dec 23 2014 09:57
а где поле user_id ?
devillom
@devillom
Dec 23 2014 09:57
ну возможно я не правильно реализовал
amigosprogdoc
@amigosprogdoc
Dec 23 2014 09:57
@greabock я так понимаю в пивот таблице
Роман Сохарев
@greabock
Dec 23 2014 09:58
я так понимаю belongsToMany() тут не к месту
amigosprogdoc
@amigosprogdoc
Dec 23 2014 09:58
свойства планируются добавлять динамически?
devillom
@devillom
Dec 23 2014 09:58
аха с админки
amigosprogdoc
@amigosprogdoc
Dec 23 2014 09:59
и часто?
devillom
@devillom
Dec 23 2014 09:59
нет
Роман Сохарев
@greabock
Dec 23 2014 09:59
блин
диграм рисовалка не пашет
amigosprogdoc
@amigosprogdoc
Dec 23 2014 09:59
просто в разы легче развернуть контакты горизонтально, и по мере необзодимости добавлять в БД поля)
Роман Сохарев
@greabock
Dec 23 2014 09:59
я бы сейчас сваял
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:00
хотя можно и так оставить)
devillom
@devillom
Dec 23 2014 10:00
[
{
"id": 2,
"title": "Дополнительный Email",
"name": "email",
"class": "",
"rules": "email",
"pivot": {
"user_id": 102,
"contact_id": 2,
"value": "q-dast@mail.ru"
}
},
{
"id": 1,
"title": "Дополнительный телефон",
"name": "phone",
"class": "",
"rules": "number|max:50",
"pivot": {
"user_id": 102,
"contact_id": 1,
"value": "8787878787"
}
}
]
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:00
$contacts = $user->contact;
foreach ( $contacts as $contact) {
тут получаем контакты
}
devillom
@devillom
Dec 23 2014 10:00
если return $user->contacts;
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:01
вернет колекцию с со списком контактов.
её надо все равно крутить..или выводить както типа toArray() или list
devillom
@devillom
Dec 23 2014 10:02
упс
упс
This message was deleted
как тут нормально код вставить))
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:03
а без contacts ?
slider23
@slider23
Dec 23 2014 10:03
Ctrl-Shift-M смотри хэлп
devillom
@devillom
Dec 23 2014 10:04
``` @foreach($contacts as $contact)
<div class="form-group">
<label for="{{'contacts['.$contact['name'].']'}}">{{$contact['title']}}</label>
                                {{Form::text('contacts['.$contact['name'].']',null,['class'=>'form-control','placeholder'=>$contact['title']])}}

                            </div>
                        @endforeach```
slider23
@slider23
Dec 23 2014 10:04
код с новой строки должен быть
devillom
@devillom
Dec 23 2014 10:04
аа
slider23
@slider23
Dec 23 2014 10:04
три символа и шифт-ентер
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:04
test
devillom
@devillom
Dec 23 2014 10:04
  @foreach($contacts as $contact)
                                <div class="form-group">
                                    <label for="{{'contacts['.$contact['name'].']'}}">{{$contact['title']}}</label>

                                    {{Form::text('contacts['.$contact['name'].']',null,['class'=>'form-control','placeholder'=>$contact['title']])}}

                                </div>
                            @endforeach
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:05
зачем массив contacts использовать?
devillom
@devillom
Dec 23 2014 10:06
для формы там список
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:07
так его же foreach уже раскрыл..
devillom
@devillom
Dec 23 2014 10:07
Там этот название contacts[email]
Роман Сохарев
@greabock
Dec 23 2014 10:08
если я все верно понял, то вот так правильно
devillom
@devillom
Dec 23 2014 10:08
строка
lordonx3
@lordonx3
Dec 23 2014 10:08
213
hello
devillom
@devillom
Dec 23 2014 10:09
да правильно
мне теперь нужно сделать форму для изменение значении pivot
hello
Роман Сохарев
@greabock
Dec 23 2014 10:10
зачем здесь пивот
slider23
@slider23
Dec 23 2014 10:10
а $contact['name'] разве будет работать ? $contact - это модель ?
devillom
@devillom
Dec 23 2014 10:10
$contact массив
 $contacts = Contact::all()->toArray();
slider23
@slider23
Dec 23 2014 10:11
да, увидел. НО ЗАЧЕМ ? :)
devillom
@devillom
Dec 23 2014 10:11
Да вывести список)
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:11
хм..теперь я не понимаю))))
спискок всех возможных?
slider23
@slider23
Dec 23 2014 10:12
с ->name и т.п. же работать удобнее
devillom
@devillom
Dec 23 2014 10:12
На вюшке?
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:12
@slider23 мне тоже как то приятней работать с объектами.
devillom
@devillom
Dec 23 2014 10:13
А разницы нету в произовдительности?))
Я раньше тоже работал с обьектами смотрю на всех уроках они массив используют
slider23
@slider23
Dec 23 2014 10:14
машина должна работать, а человек - радоваться
не наоборот
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:14
массивы зло
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:14
)))
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:15
хотя в ларе атрибуты модели всё равно в массиве храняться
devillom
@devillom
Dec 23 2014 10:15
['Я тебя вижу']
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:15
поэтому конвертить еще раз в массив глупо
slider23
@slider23
Dec 23 2014 10:15
ну как бы тут целый фреймворк написали, чтобы было удобно и весело - laravel называется, а ты все преимущества убиваешь редуцированием модели в массив
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:15
Давно хотел спросить ...коллекции можно как то сохранять в БД , что бы потом обратно вытягивать? toArray не предлагать )
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:15
у тебя в памяти будет и модель и массив атрибутов
slider23
@slider23
Dec 23 2014 10:16
Коллекции можно попробовать сохранять в кэш
Роман Сохарев
@greabock
Dec 23 2014 10:16
  @foreach($contacts as $contact)
      <div class="form-group">
           <label for="{{ $contact->name }}">{{ $contact->title'}}</label>
                 {{ Form::text( $contact->name , $contact->value, ['class'=>'form-control', 'placeholder' => $contact->title]) }}
     </div>
@endforeach
банально красивее же
slider23
@slider23
Dec 23 2014 10:16
но я не знаю, справится ли сериализатор
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:17
думаю справится
главное чтобы не было большой вложенности
и чтобы в моделях не было ссылок на app и тому подобное
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:18

@slider23

Коллекции можно попробовать сохранять в кэш

хочу в БД )

Brezhnev Ivan
@vanchelo
Dec 23 2014 10:18
так кэш есть в базе данных
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:18
хм..поворот..
ладно.подожду пока ответит cartalyst
а там будем посмотреть..
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:20
а что ты имеешь ввиду под сохранить коллекцию?
в каком виде
devillom
@devillom
Dec 23 2014 10:21
кто такой cartalyst?
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:21
https://cartalyst.com/ попросил у них полную версии корзины..
Роман Сохарев
@greabock
Dec 23 2014 10:22
лол
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:22
и за нас попроси)
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:22
ну я поделюсь)
если дадут)
Роман Сохарев
@greabock
Dec 23 2014 10:22
выпилить копирайт и на гитхаб
)))
devillom
@devillom
Dec 23 2014 10:23
Блин теперь все массивы в обьекты перевожу :(
Роман Сохарев
@greabock
Dec 23 2014 10:24
это синдром CI )))
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:24
гы
Роман Сохарев
@greabock
Dec 23 2014 10:25
у самого ломка была )))
devillom
@devillom
Dec 23 2014 10:25
что за синдром))
Роман Сохарев
@greabock
Dec 23 2014 10:26
ну это когда твой код слишком CodeIgniter
devillom
@devillom
Dec 23 2014 10:26
аа
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:26
Камрады..подскажите где можно более глубоко познакомиться с blade ? Дикое чувство , что не понимаю чего то))
devillom
@devillom
Dec 23 2014 10:27
подставь везде собачку и будет тебе blade
Роман Сохарев
@greabock
Dec 23 2014 10:27
@amigosprogdoc он же прост, как три копейки ))
единственное, что мне было тяжко понять поначалу, это как правильно composer шаблонов использовать
а потом я понял как его использовать... и решил не использовать )
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:29
composer ....?
а что используешь?
Роман Сохарев
@greabock
Dec 23 2014 10:30
ну да там есть такая штука композер шаблонов
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:30
отличная штука
когда мне надо во все админские шаблоны передать объект юзера
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:30
так....вот уже что то получше)
Роман Сохарев
@greabock
Dec 23 2014 10:31

когда мне надо во все админские шаблоны передать объект юзера

View::share( 'user' ,$user);

amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:31
кто нибудь пользуется?
devillom
@devillom
Dec 23 2014 10:32
неа
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:32
view share не настолько гибкий
и этот код надо пихать в контроллеры
а компосеры от контроллеров не зависят
только от того какая вьюха рендериться
devillom
@devillom
Dec 23 2014 10:33
@amigosprogdoc это как на вордпресе ,
?
Ilya Vostrotin
@gbgb66
Dec 23 2014 10:33
Привет. У меня чертовщина какая-то. Если юзер на Msie7-8, то Input::get('var') возвращает пустым... может кто сталкивался?
Роман Сохарев
@greabock
Dec 23 2014 10:33
@vanchelo Вот как раз это мне не нравится
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:34
вот к примеру верхнее меню есть на сайте, и оно отдельной вьюхой выводится
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:34
@devillom не знаю..я раньше больше джумлу использовал...
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:34
$this->app['view']->composer(
    'chunks.top_menu', 'Core\View\Composers\TopMenu@menu'
);
devillom
@devillom
Dec 23 2014 10:34
@amigosprogdoc я тоже , менеджер модули типа
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:34
$this->app['view']->composer(
    'chunks.top_menu', 'Core\View\Composers\TopMenu@search'
);
вариантов много
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:35
супер!...это как то и не хватало...сейчас почитаю..
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:35
и не не надо парится будет ли нужная переменная передана или нет
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:35
а что еще про Шаблоны нужно знать?
devillom
@devillom
Dec 23 2014 10:35
@vanchelo где можно прочитать,
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:35
она всегда при рендеринге шаблона chunks.top_menu будет передана
это в доках есть
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:36

@vanchelo

и не не надо парится будет ли нужная переменная передана или нет
вот это реально не хватало.

Brezhnev Ivan
@vanchelo
Dec 23 2014 10:36
можно вместо класса и метода написать замыкание
Роман Сохарев
@greabock
Dec 23 2014 10:36
у меня есть допустим BackendController. У него в конструкторе написано View::share('MainMenu', Menu::render('main'));
Все остальные от него наследуются.
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:36
но мне как-то удобнее классами
а если контроллеров много?
и если не везде меню нужно
в композерах как раз ты превязываешься не контроллерам а к вьюхам
Роман Сохарев
@greabock
Dec 23 2014 10:38

и если не везде меню нужно

это как минимум очень редкий, а вообще довольно странный юзкейс

Brezhnev Ivan
@vanchelo
Dec 23 2014 10:38
пусть не меню, а последние новости слева
Роман Сохарев
@greabock
Dec 23 2014 10:40
Все там же в конструкторе
в бд храняться настройки для роутов (управляется из админки)
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:40
а если я решил добавить новости и на другую страницу где другой контроллер?
опять писать в конструктор?
Роман Сохарев
@greabock
Dec 23 2014 10:41
Ничего не надо писать
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:41
или писать общий контроллер и от него наследовать те два?
не удобно
Роман Сохарев
@greabock
Dec 23 2014 10:41
вполне удобно, все управляется из админки же
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:41
с композерами вьюха получается независимой не от чего
на счет роутов я не понял)
Роман Сохарев
@greabock
Dec 23 2014 10:42
ну на основе роута вычисляется что отбражать, а что нет
devillom
@devillom
Dec 23 2014 10:42
очень удобно
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:42
к примеру я убираю меню с сайта
Роман Сохарев
@greabock
Dec 23 2014 10:42
в базе настройки хранятся для каждого роута
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:43
нужно еще полезть в конструктор контроллера и убрать оттуда View::share?
Роман Сохарев
@greabock
Dec 23 2014 10:43
нет
нужно просто пойти в админку и убрать галочки
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:43
@greabock админку сам писал я так понимаю?
Роман Сохарев
@greabock
Dec 23 2014 10:44
да
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:44
@greabock ну тогда можещь поделиться с народом общим механизмом твоего подхода?
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:44
а что с галочками не так?
Роман Сохарев
@greabock
Dec 23 2014 10:44
как только закончу
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:44
убрал я галочку и что?
ты лучше покажи конструктор контроллера)
это всё прояснит
amigosprogdoc
@amigosprogdoc
Dec 23 2014 10:45
ты лучше покажи конструктор контроллера)
ну или хотя бы описать общие понятия
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:46
я раньше боялся композеров) юзал везде View::share
и сейчас юзаю share но не так как раньше)
вот например простой составитель
<?php Core\View\Composers;

use Request;
use Illuminate\View\View;

class Search
{
    public function search(View $view)
    {
        $view->with('q', e(Request::query('q')));
    }
}
и вот шаблон к которому он привязан
<div class="search" id="search">
    <form action="/search" method="get">
        <input type="text" value="{{ $q }}" name="q"/>
    </form>
</div>
в каком бы месте приложения я не добавил этот шаблон везде будет переменная $q доступна
LaravelButler

Приветствуем Вас, @DmitriyAf, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснений отношений между участниками. За нарушение – Бан!

Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, ознакомьтесь с Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

devillom
@devillom
Dec 23 2014 10:52
о что то намудрил
    public function getContactValue($name){
        $contact = $this->contacts()
            ->where('name',$name)
            ->wherePivot('user_id',$this->id)->first();
        return $contact->pivot->value;
    }
    public function getContactValue($name){
        $contact = $this->contacts()
            ->where('name',$name)
            ->wherePivot('user_id',$this->id)->first();
        if(!is_null($contact)){
            return $contact->pivot->value;
        }
        return null;

    }
небольшая поправка
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:58
и как ты получаешь?
$model->getContactValue()?
devillom
@devillom
Dec 23 2014 10:58
 {{Form::open(['route'=>'post-user-settings','method'=>'post'])}}

                            @foreach($contacts as $contact)
                                <div class="form-group">
                                    <label for="{{'contacts['.$contact->name.']'}}">{{$contact->title}}</label>

                                    {{Form::text('contacts['.$contact->name.']',$user->getContactValue($contact->name),['class'=>'form-control','placeholder'=>$contact->title])}}

                                </div>
                            @endforeach


                            <div class="form-group text-right">
                                {{Form::submit(Lang::get('text.save'),['class'=>'btn btn-primary'])}}
                            </div>
                            {{Form::hidden('type','change_contacts')}}
                            {{Form::close()}}
Brezhnev Ivan
@vanchelo
Dec 23 2014 10:59
формах ' не нужны
'.$contact->name.' -> $contact->name
<input name="contact[phone]" />
<input name="contact['phone']" /> вот так делать не надо, это не php
devillom
@devillom
Dec 23 2014 11:00
там же несколько emaul. skype итд
amigosprogdoc
@amigosprogdoc
Dec 23 2014 11:00
@vanchelo а {{ не нужны?
а...протупил)
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:01
@amigosprogdoc {{ $var }} == <?= $var ?> == <?php echo $var ?>
devillom
@devillom
Dec 23 2014 11:01
<input class="form-control" placeholder="Дополнительный Email" name="contacts[email]" type="text" value="q-dast@mail.ru">
@vanchelo нормально генерируетсья
Роман Сохарев
@greabock
Dec 23 2014 11:01
@amigosprogdoc @vanchelo сейчас кофей допью покажу код конструктора
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:01
@greabock ок)
я думаю что понял как у тебя сделано)
amigosprogdoc
@amigosprogdoc
Dec 23 2014 11:01
@greabock ждемс
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:02
в зависимости от имени маршрута переменные шарятся?
devillom
@devillom
Dec 23 2014 11:02
@vanchelo ты кому)
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:02
@greabock
@devillom а почему не сделал как тебе @greabock показал?
for="contacts[{{ $contact->name }}]"
по мне так намного приятнее
без ср$ной конкатенации и кучи кавычек
нафига вообще в шаблонах юзать конкатенацию строк?
все уроки по ларавер да и не только сводятся к созданию бложика)
slider23
@slider23
Dec 23 2014 11:05
ну если юзать массивы, то другого пути нет :)
Роман Сохарев
@greabock
Dec 23 2014 11:05

в общем, если выдрать кусок из конструктора (у меня он довольно массивный, и менюшка отдельно рендерится)


         $routeSetting = RouteSetting::whereRoute(Route::getCurrentRoute()->getPath())->first();

         $modules = json_decode($routeSetting->modules);

         foreach($modules as $module){

             if($module->published){

                 View::share($module->name, (new $module->class)->render());

             }

         }

я хотел изначально хранить модули в отдельной таблице, но потом мне стало лень ))

Brezhnev Ivan
@vanchelo
Dec 23 2014 11:05
@slider23 в случае @devillom?
devillom
@devillom
Dec 23 2014 11:06
ок сдела.)
slider23
@slider23
Dec 23 2014 11:06
да
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:06
так у него нет массивов
присмотрись
devillom
@devillom
Dec 23 2014 11:07
))
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:07
он в атрибуте for так генерит значение)
devillom
@devillom
Dec 23 2014 11:07
  <label for="contacts[{{$contact->id}}][{{$contact->name}}]">{{$contact->title}}</label>
так годиться?
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:07
так хорошо
значительно чище
Роман Сохарев
@greabock
Dec 23 2014 11:08
если без мягкого знака, то вполне сгодится ))
devillom
@devillom
Dec 23 2014 11:08
))
{{Form::text("contacts[$contact->id][$contact->name]",$user->getContactValue($contact->name),['class'=>'form-control','placeholder'=>$contact->title])}}
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:09
тоже норм
Vladislav Kuzmin
@webwaymen
Dec 23 2014 11:09
тут какой-то конкурс от интел https://vk.com/intelsoftware?w=wall-10498858_693
devillom
@devillom
Dec 23 2014 11:10
привычка использовать одинарные ковычки из jQuery
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:11
@webwaymen не участвую в конкурсах)
я полагаю это реклама группы была?
devillom
@devillom
Dec 23 2014 11:13
вроде того
но надеюсь @webwaymen желает нам добра)
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:14
этого никто не знает)
devillom
@devillom
Dec 23 2014 11:14
This message was deleted
class UserController extends BaseController
{

    protected $user;

    public function __construct(User $user)
    {
        $this->user = $user;
    }
Через __construct
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:15
ты о чем?
devillom
@devillom
Dec 23 2014 11:15
Подскажите почему желательно делать так
через конструктор
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:16
так не желательно делать
у тебя User это модель?
devillom
@devillom
Dec 23 2014 11:16
Да
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:16
ты хочешь текущего юзера получить?
или нового создать?
devillom
@devillom
Dec 23 2014 11:17
нет я знаю что можно изпользовать так User::find(55) итд
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:17
напиши что тебе нужно получить
devillom
@devillom
Dec 23 2014 11:18
Но на ларакасте так делали)
Мне не нужно ничего получать)
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:18
надо понимать что делаешь и какая цель
если ничего не нужно получать зачем передавать юзера в конструктор?
devillom
@devillom
Dec 23 2014 11:18
зачем используеться такая кончтрукция
с*
Это связавно с безопасностью или как
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:19
с безопасностью не связано
devillom
@devillom
Dec 23 2014 11:19
protected $user;
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:20
и?
protected != безопасность)
devillom
@devillom
Dec 23 2014 11:20
Щас скину ссылку на видео )
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:20
это область видимости свойства)
почитай про классы
еще почитай про DI в ларавел, тогда поймешь что делает User в конструкторе контроллера
devillom
@devillom
Dec 23 2014 11:22
Нет я посмотрел виде насчет иньекции)
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:22
Dependency Injection
я тебе об этом и написал почитать)
в данном случае ларавел сама разрещает зависимости при создании экземпляра класса контроллера
Vladislav Kuzmin
@webwaymen
Dec 23 2014 11:23
нет это не реклама группы @vanchelo просто поделился, я даже смотрю они ни как не продвигают свой конкурс
devillom
@devillom
Dec 23 2014 11:23
аа) Я самоучка еще много чего не понимаю походу
короче, если ты не понимаешь что делаешь и для чего это нужно, то не используй такой подход, или разберись вначале
devillom
@devillom
Dec 23 2014 11:26
  public function getAllWorkers()
    {
        $users = $this->user->all();
        return View::make('user/workers', compact('users'));
    }
Вот так получаю
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:26
в таком случае и View надо передавать в конструктор)
devillom
@devillom
Dec 23 2014 11:26
это очень плохо?)
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:26
если ты хочешь его изолировать)
devillom
@devillom
Dec 23 2014 11:27
как)
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:27
и вообще надо передавать интерфейсы
devillom
@devillom
Dec 23 2014 11:27
пример кода и я пойму)
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:27
пример какого кода?
devillom
@devillom
Dec 23 2014 11:28
таком случае и View надо передавать в конструктор)
вот тут он рассказывает
devillom
@devillom
Dec 23 2014 11:31
Route::get это зло?
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:31
нет
в фасадах нет ничего злого!
devillom
@devillom
Dec 23 2014 11:31
DON’T USE FACADES
это звучит очень серезно)
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:32
забей, объяснить в двух словах что и как я не в силах
почитай статьи по DI
а лучше сначала что такое классы в PHP
эта статья ответ Тейлора на пост другого программиста который писал "Не используйте фасады"
там большой срач был
devillom
@devillom
Dec 23 2014 11:34
я чувствую себя не программистом :worried:
Vladislav Kuzmin
@webwaymen
Dec 23 2014 11:35
можете подсказать, как папку public сделать индексной, сделал блог хочу перенести на виртуальный хостинг
devillom
@devillom
Dec 23 2014 11:35
@webwaymen как называется папка сайта
куда заливаешь сайт
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:36
@webwaymen @PEKTOP писал такую статью
Роман Сохарев
@greabock
Dec 23 2014 11:36
я делал просто
devillom
@devillom
Dec 23 2014 11:36
@vanchelo спс понял
Vladislav Kuzmin
@webwaymen
Dec 23 2014 11:36
@devillom на хостинге?
devillom
@devillom
Dec 23 2014 11:36
аха
Роман Сохарев
@greabock
Dec 23 2014 11:37
при условии, что других сайтов там нет, ложишь папку на уровень выше, переименовываешь public в www (или как там на хостинге принято), bootstrap/paths.php меняешь путь к паблику. профит
devillom
@devillom
Dec 23 2014 11:38
вот вот)
Роман Сохарев
@greabock
Dec 23 2014 11:38
если же есть другие сайты, то это несколько сложнее
Vladislav Kuzmin
@webwaymen
Dec 23 2014 11:38
htdocs это индексная папка на хостинге
devillom
@devillom
Dec 23 2014 11:39
если есть другие сайты возможно сделать с htaccsess
Vladislav Kuzmin
@webwaymen
Dec 23 2014 11:39
вроде понял, в bootstrap/paths.php поковыряю
devillom
@devillom
Dec 23 2014 11:40
@webwaymen много рядом папок с htdocs
Vladislav Kuzmin
@webwaymen
Dec 23 2014 11:40
2 папки
@devillom cgi-bin и logs
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:40
@devillom вот магия DI в ларавел
class X {
    function __construct(User $user) {
        $this->user = $user;
    }
}

class Y {
    function __construct(User $user) {
        $this->user = $user;
    }
}

$x = app('X');
$y = app('Y');

var_dump($x->user === $y->user); // bool(false)
видишь что мы сами не используем new X(new User)
devillom
@devillom
Dec 23 2014 11:41
@webwaymen если не конфликтует кинь файлы сайта туда , удали папку htdocs и переименуй папку public htdocs
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:41
ларавел сама создает для нас экземпляр класса и всех его зависимостей
devillom
@devillom
Dec 23 2014 11:43
@vanchelo значит я не правильно делаю
Vladislav Kuzmin
@webwaymen
Dec 23 2014 11:43
@devillom спасибо, попробую
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:43
если понимаешь зачем тебе это то правильно
devillom
@devillom
Dec 23 2014 11:44
попробуй сначало удалить папку htdocs возможно у тебя не поучиться из прав
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:45
если Джефри Вэй сказал что так надо делать то делай)
devillom
@devillom
Dec 23 2014 11:45
@vanchelo ок просто у меня 5 дней осталось для здачи проекта думаю пока это не критчино
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:45
только я думаю ты не правильно понял его урок
devillom
@devillom
Dec 23 2014 11:45
ты нашол его?)
Brezhnev Ivan
@vanchelo
Dec 23 2014 11:45
он скорее всего просто рассказывал про внедрение зависимостей
нет, я не искал
есть ли приложение этого чата для андройда
Maxim
@Big-Shark
Dec 23 2014 11:50
нет
Роман Сохарев
@greabock
Dec 23 2014 11:51
общают уже давно, но нету
Роман Сохарев
@greabock
Dec 23 2014 12:00

если Джефри Вэй сказал что так надо делать то делай)

прям царь и бог ))))

Brezhnev Ivan
@vanchelo
Dec 23 2014 12:00
он же его в пример приводит)
Maxim
@Big-Shark
Dec 23 2014 12:01
Тут есть любители кино?
Brezhnev Ivan
@vanchelo
Dec 23 2014 12:01
ценители)
Maxim
@Big-Shark
Dec 23 2014 12:02

http://nnm-club.me/forum/viewtopic.php?t=851654 описание

Когда новые жильцы заселялись в дом, они даже не представляли, что у них будет такой сосед, как Винсент де Ван Найс. Этот престарелый ветеран войны не любит людей, а они - его. Он постоянно пьет и развлекается с проститутками. Но соседский мальчик увидел в Винсенте нечто, что не замечают остальные. Старик в свою очередь открывается для мальчика и учит его всему, чтобы тот рос настоящим мужчиной...

Теперь вопрос, только мне кажется что это перерождение Гран Торино только более доброе?

Brezhnev Ivan
@vanchelo
Dec 23 2014 12:03
хз, я не смотрел Гран Торино
Maxim
@Big-Shark
Dec 23 2014 12:04
@vanchelo тогда рекомендую тебе заняться этим сегодня вечером)
Brezhnev Ivan
@vanchelo
Dec 23 2014 12:04
)
slider23
@slider23
Dec 23 2014 12:10
Я с тех пор как посмотрел "Песни со второго этажа" больше не интересуюсь кинематографом :)
Правда, недавняя "Великая красота" была вполне ничего. Но я до половины досмотрел, окончание оставлю на как-нибудь.
Поставить вопрос - это все могут, а окончание сделать - не все. Не хочу портить послевкусие.
Brezhnev Ivan
@vanchelo
Dec 23 2014 12:12
:smile:
Maxim
@Big-Shark
Dec 23 2014 12:19
@vanchelo Ваня, я знаю чат вне политики, и все такое, но как там у вас обстановка в стране?
Brezhnev Ivan
@vanchelo
Dec 23 2014 12:25
Пока ничего хорошего
еще дна не достигли)
у родителей пока более менее, вода свет отопление интернет всё восстановили
но пока не во всех частях города
периодически говорят арта и град лупит с окраин города
но уже привыкли)
люди стараются на улицу не выходить по возможности
школы работают, у меня малая учится
Brezhnev Ivan
@vanchelo
Dec 23 2014 12:31
самое интересно что украинский язык и историю преподают)
хотя воют с украинской властью)
мне вообще нифига не понятно что происходит
такое чувство что у нас просто полигон, на котором запад с рф бодаются
devillom
@devillom
Dec 23 2014 12:34
  public function changeContacts($data)
    {
        foreach($data['contacts'] as $key=>$contact){
            if(empty($contact['value'])){
                unset($data[$key]);
            }
        }
        Auth::user()->contacts()->sync($data['contacts']);
        return  Auth::user()->contacts;

    }
$this->changeContacts(Input::all());
хотя думаю валидацию запихнуть
чето unset не удаляет пусты значения
    public function changeContacts($data)
    {
        foreach($data['contacts'] as $key=>$contact){
            if(empty($contact['value'])){
                unset($data['contacts'][$key]);
            }
        }
        Auth::user()->contacts()->sync($data['contacts']);
        return  Auth::user()->contacts;

    }
во я гении)
devillom
@devillom
Dec 23 2014 12:59
    /**
     * Сохраняем дополнительные контакты пользователя
     * @param $data
     * @return $this|mixed
     */
    public function changeContacts($data)
    {
        //@ TODO Нужно еще подумать над когом 
        foreach($data['contacts'] as $key=>$contact){
            $c = Contact::find($key);
            //Удаляем пусты значение в массиве
            if(empty($contact['value'])){
                unset($data['contacts'][$key]);
            }
            //Валидация введенных данных
            $validator = Validator::make(['value'=>$contact['value']], ['value'=>$c->rules]);

            if (!$validator->passes() && !empty($contact['value'])) {
                return  Redirect::route('get-user-settings', ['username' => Auth::user()->username])
                    ->withErrors($validator);
            }

        }

        Auth::user()->contacts()->sync($data['contacts']);
        return  Auth::user()->contacts;

    }
есть кто?
devillom
@devillom
Dec 23 2014 13:05
не помню функцию как получить ключ из такого массива
Array ( [phone] => 8787878787 )
Rafkat Galiullin
@neolite
Dec 23 2014 13:05
пока с php быдло кодом не поработаешь, не ценишь норм фреймворки, например ларавел
array_column?)
работаю над проектом, на главной странице 8000 sql запросов)
devillom
@devillom
Dec 23 2014 13:06
))
категории что ли?)
amigosprogdoc
@amigosprogdoc
Dec 23 2014 13:07
офигеть..
devillom
@devillom
Dec 23 2014 13:07
array_keys
@amigosprogdoc что там
Alina Soboleva
@AlinaSob
Dec 23 2014 13:09
@neolite +100500
Rafkat Galiullin
@neolite
Dec 23 2014 13:13
индусский код че) на каждый чих по запросу
NelinD
@NelinD
Dec 23 2014 13:17

есть таблица discounts
есть модель Discount

Discount::all();

выдает такое сообщение

Call to undefined method Discount::all()
в чем может быть причина
devillom
@devillom
Dec 23 2014 13:17
protected $table = 'discounts';
NelinD
@NelinD
Dec 23 2014 13:18
не помогает
devillom
@devillom
Dec 23 2014 13:18
попробуй в моделе прописать
NelinD
@NelinD
Dec 23 2014 13:19
@devillom не помогает
devillom
@devillom
Dec 23 2014 13:19
может где то опечатка Discount
Vlad Shcherbin
@VladShcherbin
Dec 23 2014 13:19
что наследует Discount ?
devillom
@devillom
Dec 23 2014 13:20
должно class Discount extends \Eloquent {
NelinD
@NelinD
Dec 23 2014 13:20
    class Discount extends \Eloquent {
        protected $fillable = [];
        protected $table = 'discounts';
    }
на опечатки все перекопировал
Rafkat Galiullin
@neolite
Dec 23 2014 13:21
мфк
var_dump(new Discount())?
NelinD
@NelinD
Dec 23 2014 13:22
Use of undefined constant Discount - assumed 'Discount'
devillom
@devillom
Dec 23 2014 13:23
другие модели работают,?
не знаю может просто создай заново файл utf-8 без бом
devillom
@devillom
Dec 23 2014 13:32
    /**
     * Сохраняем дополнительные контакты пользователя
     * @param $data
     * @return $this|mixed
     */
    public function changeContacts($data)
    {
        $values = array();
        //@ TODO Нужно еще подумать над кодом
        foreach ($data['contacts'] as $key => $contact) {

            $c = Contact::find($key);
            //Валидация введенных данных
            $validator = Validator::make(['value' => $contact[key($contact)]], [key($contact) => $c->rules]);

            if (!$validator->passes() && !empty($contact[key($contact)])) {
                return Redirect::route('get-user-settings', ['username' => Auth::user()->username])
                    ->withErrors($validator);
            }


            if (!empty($contact[key($contact)])) {
                $values[$key]['value'] = $contact[key($contact)];
            }


        }

        Auth::user()->contacts()->sync($values);
        return Auth::user()->contacts;

    }
Можно ли понять эту функцию ? )
devillom
@devillom
Dec 23 2014 13:42
    /**
     * Сохраняем дополнительные контакты пользователя
     * @param $data
     * @return $this|mixed
     */
    public function changeContacts($data)
    {
        $values = array();
        //@ TODO Нужно еще подумать над кодом
        foreach ($data['contacts'] as $key => $contact) {

            $c = Contact::find($key);
            //Валидация введенных данных
            $validator = Validator::make([key($contact) => $contact[key($contact)]], [key($contact) => $c->rules]);

            if (!$validator->passes()) {
                return Redirect::route('get-user-settings', ['username' => Auth::user()->username])
                    ->withErrors($validator);
            }

            if (!empty($contact[key($contact)])) {
                $values[$key]['value'] = $contact[key($contact)];
            }

        }

        if (is_array($values)) {
            Auth::user()->contacts()->sync($values);
            return Redirect::route('get-user-settings', ['username' => Auth::user()->username])
                ->with('success', 'Данные сохранены');
        }

    }
вот теперь точно работает с валидации
Роман Сохарев
@greabock
Dec 23 2014 14:14
"$c" - не надо так
и вообще это жесть
NelinD
@NelinD
Dec 23 2014 14:14
надо $
Роман Сохарев
@greabock
Dec 23 2014 14:14
обращаться к базе в лупе дурной тон, как минимум
как максимум, говнокод =)
devillom
@devillom
Dec 23 2014 14:17
Что посаветуете))
Роман Сохарев
@greabock
Dec 23 2014 14:18
вытаскивать все записи одним запросом
вообще как-то странно, валидация в цикле. Не лучше ли собрать массив и сразу все провалидировать?
очнама странно это все )
devillom
@devillom
Dec 23 2014 14:24
$data['contacts'] у меня
{
"1": {
"phone": "8787878787"
},
"2": {
"email": "q-dast@mail.ru"
},
"3": {
"skype": ""
},
"4": {
"site": "http://localhost:8000/users/zerdman/settings"
},
"5": {
"region": "1"
},
"6": {
"station": "1"
}
}
    $inputs =  array();
        foreach($data['contacts'] as $key=>$input){
            $inputs[$key] = $input;
        }
тип так
slider23
@slider23
Dec 23 2014 14:26
если до сдачи работы 5 дней, то можно делать как угодно, лишь бы работало :)
devillom
@devillom
Dec 23 2014 14:26
нет ну я так не могу))
Если бы так то в чате бы не сидел мастерил бы говнокод себе)
Роман Сохарев
@greabock
Dec 23 2014 14:28
key($contact) => $contact[key($contact)] я вот это вообще понять не могу )))
devillom
@devillom
Dec 23 2014 14:29
на выходе 'email'=>'text@mail.ru' ))
Роман Сохарев
@greabock
Dec 23 2014 14:40
это у тебя вообще в модели или в контроллере код?
видимо в модели...
devillom
@devillom
Dec 23 2014 14:41
в контроллере
щас еще что то придумал
Роман Сохарев
@greabock
Dec 23 2014 14:42
а откуда ты получаешь $data - это что вообще?
devillom
@devillom
Dec 23 2014 14:42
Input::all()
 /**
     * Сохраняем дополнительные контакты пользователя
     * @param $data
     * @return $this|mixed
     */
    public function changeContacts($data)
    {

        $rules = Contact::lists('rules','name');

        $inputs =  array();

        foreach($data['contacts'] as $key=>$input){
           if($input){
                $inputs[$key] = $input;
           }
        }
        $validator = Validator::make($inputs, $rules);

        if (!$validator->passes()) {
            return Redirect::route('get-user-settings', ['username' => Auth::user()->username])
                ->withErrors($validator);
        }

        if (is_array($inputs)) {
            Auth::user()->contacts()->sync($inputs);
            return Redirect::route('get-user-settings', ['username' => Auth::user()->username])
                ->with('success', 'Данные сохранены');
        }
        return Redirect::route('get-user-settings', ['username' => Auth::user()->username])
        ->with('warning', 'Что то не так?');

    }
Роман Сохарев
@greabock
Dec 23 2014 14:44
ты эту функцию вызываешь из другого метода?
devillom
@devillom
Dec 23 2014 14:44
аха
Роман Сохарев
@greabock
Dec 23 2014 14:44
а почему она тогда публичная?
devillom
@devillom
Dec 23 2014 14:44
это плохо?)
case 'change_contacts':
return $this->changeContacts(Input::all());
break;
 case 'change_contacts':
                    return $this->changeContacts(Input::all());
                    break;
Роман Сохарев
@greabock
Dec 23 2014 14:45
мне страшно )
я даже боюсь представить где мог понадобиться switch =)))
ну вот смотри
devillom
@devillom
Dec 23 2014 14:45
Да вот смотри)
У меня на странице несколько форм
Роман Сохарев
@greabock
Dec 23 2014 14:46
окей
я слушаю =)
devillom
@devillom
Dec 23 2014 14:46
У каждого есть hidden input name="type"
change_pass
change+photo
Роман Сохарев
@greabock
Dec 23 2014 14:46
это была плохая идея =)
devillom
@devillom
Dec 23 2014 14:47
change_contact
Роман Сохарев
@greabock
Dec 23 2014 14:47
я тебя понял
devillom
@devillom
Dec 23 2014 14:47
)
Роман Сохарев
@greabock
Dec 23 2014 14:47
нужно было просто на разные роуты их отправлять
devillom
@devillom
Dec 23 2014 14:48
неужели это тоже очень плохо(
LaravelButler

Приветствуем Вас, @bnik, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснений отношений между участниками. За нарушение – Бан!

Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, ознакомьтесь с Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Роман Сохарев
@greabock
Dec 23 2014 14:51
    public function changeContacts()
    {
            $contacts = Input::get('contacts');

            $rules = Contact::lists('rules','name');

            $validator = Validator::make($contacts, $rules);

            if($validator->fails())
            {      
                return Redirect::route('get-user-settings', ['username' => Auth::user()->username])->withErrors($validator);
            }

            Auth::user()->contacts()->sync($contacts);

            return Redirect::route('get-user-settings', ['username' => Auth::user()->username])->with('success', 'Данные сохранены');

    }
bnik
@bnik
Dec 23 2014 14:51
Всем привет.
Решил посмотреть, попинать Laravel.
Методом "парочка статей из интернета" немножко понял общий смысл работы.
Теперь внимание вопрос: Что посоветуете почитать для подробного изучения Laravel?
devillom
@devillom
Dec 23 2014 14:52
Документаацию
Роман Сохарев
@greabock
Dec 23 2014 14:52
офф документацию
а уже после статьи на погружение
devillom
@devillom
Dec 23 2014 14:52
а почему
 return Redirect::route('get-user-settings', ['username' => Auth::user()->username])->withErrors($validator);
внутри if($validator->passes())
Роман Сохарев
@greabock
Dec 23 2014 14:53
ну наоборот значит
или вот так (поменял)
ой
нет
devillom
@devillom
Dec 23 2014 14:54
Тут мне подцветка кода очень нравиться интересно на phpShtorm есть такая тема
Роман Сохарев
@greabock
Dec 23 2014 14:55
не знаю
я юзаю space peacock
Роман Сохарев
@greabock
Dec 23 2014 15:02
@blink еще тут?
Orel
@2byte
Dec 23 2014 15:25
@bnik http://laravel.ru на ру довольно понятная
slider23
@slider23
Dec 23 2014 15:31
только там версия 4.1, если не 4.0
Роман Сохарев
@greabock
Dec 23 2014 15:32
^ это так :-(
ох уж эти 16gb... развращают. Год назад я себе едва мог десять вкладок позволить.
devillom
@devillom
Dec 23 2014 15:33
16gb чего?)
Роман Сохарев
@greabock
Dec 23 2014 15:33
оперативки, конечно
devillom
@devillom
Dec 23 2014 15:35
Вообще щустрее стал? не зависает иногда
Роман Сохарев
@greabock
Dec 23 2014 15:35
нет, а с чего бы? )
devillom
@devillom
Dec 23 2014 15:35
а видюха какая
Роман Сохарев
@greabock
Dec 23 2014 15:36
760 ti
devillom
@devillom
Dec 23 2014 15:36
после использование массива нужно ли его удалять unset ?
Роман Сохарев
@greabock
Dec 23 2014 15:37
пожалуй это перебор )
devillom
@devillom
Dec 23 2014 15:38
просто хочется максимум оптимизировать код)
Роман Сохарев
@greabock
Dec 23 2014 15:38
это был бы демон, где нужно за утечками следить, то был бы смысл
а так, ты на операцию удаления больше ресурсов потратишь, чем сам массив оперативы съест
devillom
@devillom
Dec 23 2014 15:39
даже так)
Роман Сохарев
@greabock
Dec 23 2014 15:42
это же php - он сеансовый. Скрипт отработал и умер. Само все удалилось )
devillom
@devillom
Dec 23 2014 15:42
волшебство)
pilot911
@pilot911
Dec 23 2014 15:56
привет всем )
devillom
@devillom
Dec 23 2014 15:56
Привет
pilot911
@pilot911
Dec 23 2014 15:56
друзья, разрабатывать пакеты под Ларавел 5 сейчас невозможно - воркбенч переделывается, часть методов удалены
кто-нибудь знает, где почитать о новых правилах создания пакетов?
Роман Сохарев
@greabock
Dec 23 2014 16:10
да дождитесь вы уже релиза...
Orel
@2byte
Dec 23 2014 16:12
@pilot911 сечйас не стоит трогать пятерку
barsukidze
@barsukidze
Dec 23 2014 16:13
но тогда и 4ку смысла нет начинать изучать получается. различия достаточно весомы
LaravelButler

Приветствуем Вас, @barsukidze, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснений отношений между участниками. За нарушение – Бан!

Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, ознакомьтесь с Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Orel
@2byte
Dec 23 2014 16:15
@barsukidze Изменилась немного структура, в остальном улучшения с новыми плюшками
barsukidze
@barsukidze
Dec 23 2014 16:16
@2byte спасибо. ушел читать документацию по 4ой версии
Orel
@2byte
Dec 23 2014 16:18
@barsukidze А именно структура приложения, для устранения трудностей с неймспейсами, хотя и так норм было
barsukidze
@barsukidze
Dec 23 2014 16:19
да, про изменения в структуре читал
Роман Сохарев
@greabock
Dec 23 2014 16:22
что вы понимаете под тем, что "не стоит изучать четверку"?
в ларавел помимо структуры пакетов и провайдеров есть куча всего
barsukidze
@barsukidze
Dec 23 2014 16:25
@greabock я предполагал, что 5ка отличается существеннее, чем просто изменение структуры
поэтому думал что лучше подождать документации по 5ой версии и уже тогда начать изучение
Роман Сохарев
@greabock
Dec 23 2014 16:26
учите eloquent
blade шаблонизатор
Orel
@2byte
Dec 23 2014 16:27
Четверка хороша,а 5 будет лучше
barsukidze
@barsukidze
Dec 23 2014 16:28
спасибо за напутствия )
Роман Сохарев
@greabock
Dec 23 2014 16:29
да кучу всего еще: роутинг, редиректы, сессии, работа с redis
Brezhnev Ivan
@vanchelo
Dec 23 2014 17:00
ядро почти не изменилось
так что доки по 4-ки довольно таки актуальны
некоторые интерфейсы Тейлор зачем опустил на уровень ниже в NS Contracts
я пока не силен в его высшей математики)
мне кажется Тейлор слишком увлекся академическим программированием
а все лару полюбили как раз таки не за это, для этого есть Симфони
Rafkat Galiullin
@neolite
Dec 23 2014 17:08
мне вчера сказали, что ларавел это обертка над симфони
думал, что ответить)
Alexey
@Butochnikov
Dec 23 2014 18:38
@neolite ответил? )
Brezhnev Ivan
@vanchelo
Dec 23 2014 18:41
@slider23 запустил я редис без подкачки, экспериментальным путем подобрал значение при котором редис перестал падать сразу после старта redis-server.exe --maxheap 10M
Ray Mayemir
@raymayemir
Dec 23 2014 19:13
Всем доброго времени суток
Роман Сохарев
@greabock
Dec 23 2014 19:19
привет
Народ, а знает кто как в Schema Builder повешать уникальный индекс на сочетание полей?
Роман Сохарев
@greabock
Dec 23 2014 19:25
хотя нет, я туплю
все норм )
Ray Mayemir
@raymayemir
Dec 23 2014 19:25
как можно избежать запоя после увольнения с работы ?
Роман Сохарев
@greabock
Dec 23 2014 19:26
не бухать пробовал?
Ray Mayemir
@raymayemir
Dec 23 2014 19:26
😄
@greabock а что так можно ?)
Valeriy
@Adoafw
Dec 23 2014 19:30
увольнение это всего лишь приглашение на другую)
Ray Mayemir
@raymayemir
Dec 23 2014 19:30
@Adoafw 😄
Роман Сохарев
@greabock
Dec 23 2014 19:31
^ за исключением тех случаев, когда нет приглашения на другую )
Ray Mayemir
@raymayemir
Dec 23 2014 19:36
ну да согласен
Роман Сохарев
@greabock
Dec 23 2014 19:53
можно ли как-то сделать массовый updateOrCreate() средствами Eloquent? Или придется захардкодить "ON DUPLICATE"?
ок... "лес рук" ))
Ray Mayemir
@raymayemir
Dec 23 2014 21:36
с parse.com кто нибудь работал ?
Alexey
@Butochnikov
Dec 23 2014 21:47
@/all а кто в JS хорошо соображает и может помочь?
Alexander Egorov
@Amegatron
Dec 23 2014 21:50
@Butochnikov вообще Кирилл смог бы :) А так может и я смогу :)
MaD
@maddog670
Dec 23 2014 21:51
нативный js или jQ?
Alexey
@Butochnikov
Dec 23 2014 21:51
JQ
@Amegatron напишу тогда тебе, если не против
Alexander Egorov
@Amegatron
Dec 23 2014 21:51
хотя Кирилл не переваривает JQ :)
Ок, пиши :)