These are chat archives for LaravelRUS/chat

3rd
Mar 2015
Palchik
@palchik1985
Mar 03 2015 00:20
всем привет. Кто может сказать, почему lara при инсталле через композер кидает ошибку [RuntimeException]
Could not load package dragonrun1/phpspec in http://packagist.org: [UnexpectedValueException] Could not
parse version constraint ^1.0.1: Invalid version string "^1.0.1"
и далее при попытке загрузить страницу вместо стандартного приветствия отображается Fatal error: Class 'Illuminate\Foundation\Application' not found in D:\............\bootstrap\app.php on line 14
Maxim
@Big-Shark
Mar 03 2015 00:23
@palchik1985 так вроде написано же
Palchik
@palchik1985
Mar 03 2015 00:24
что phpspec крашнулся у автора?
Maxim
@Big-Shark
Mar 03 2015 00:25
@palchik1985 Could not load package dragonrun1/phpspec in http://packagist.org: [UnexpectedValueException] Could not
parse version constraint ^1.0.1: Invalid version string "^1.0.1"
@palchik1985 я называю это "учимся читать" )
@palchik1985 если с англ все плохо, гугл транслит поможет, перевод не идеальный, но этого достаточно
Palchik
@palchik1985
Mar 03 2015 00:29
хорошо. Я тупой и учусь читать. Я здесь вижу: невозможно загрузить phpspec из-за того, что версия 1.0.1 не найдена. Правильно? Но а) я просто в очередной раз делаю стандартные команды
git clone ..... laravel/laravel laravel
cd laravel
composer install
и меня крашит.
и б) Зашел в composer.json там вся инфа о версии phpspec правильно описана (даже сверил с самим описанием автора на packagist)
Где я натупил?
Maxim
@Big-Shark
Mar 03 2015 00:30
@palchik1985 У тебя есть в дериктории composer.lock?
Должен быть, там зашиты точные версии того что ставилось при апдейти, а инстал берет данные из этого файла
Palchik
@palchik1985
Mar 03 2015 00:30
нет. А должен быть? Этой директории не было, она создалась при git clone
Maxim
@Big-Shark
Mar 03 2015 00:31
@palchik1985 при первом использовании композер апдейт он создается обычно
@palchik1985 попробуй композер апдейт
Palchik
@palchik1985
Mar 03 2015 00:31
я не делал апдейт, меня крашнуло на инсталл
тот же самый exception
Maxim
@Big-Shark
Mar 03 2015 00:32
@palchik1985 покажи композер жсон
Palchik
@palchik1985
Mar 03 2015 00:32
Снимок_экрана_030315_023245_AM.jpg
и такой командой тоже
Maxim
@Big-Shark
Mar 03 2015 00:33
@palchik1985 обнови композер
Palchik
@palchik1985
Mar 03 2015 00:33
@Big-Shark да все стандартно, я ничего не трогал, это сразу при закачке дефолта с laravel
@Big-Shark есть команда, или надо искать-качать composer.phar ???
нашел
Maxim
@Big-Shark
Mar 03 2015 00:35
@palchik1985 там видиш варнинг, и там даже команда есть
Palchik
@palchik1985
Mar 03 2015 00:36
она не работает
но уже вроде разобрался
спасибо, все заработало
Maxim
@Big-Shark
Mar 03 2015 00:39
@palchik1985 и что было?
Palchik
@palchik1985
Mar 03 2015 00:39
старый composer
я увидел варнинг, попробовал командой из подсказки, она не заработала (что-то там not found). Я решил пока забить, и начал клонить-инсталлить, кинуло ексепшен, я пошел по ексепшену проверять версию, исправил composer.json, опять кинуло ексепшен и только после этого я решил спросить в чате
все поставилось, вижу стартовое приветствие от новенькой лары, спасибо за подсказку
Роман Сохарев
@greabock
Mar 03 2015 01:48
если кому-то интересно
https://github.com/greabock/larfang
Artur Gafurov
@assurrussa
Mar 03 2015 02:56
@greabock я думаю это всем интересно)))))
Maxim
@Big-Shark
Mar 03 2015 02:57
@assurrussa не всем)
Artur Gafurov
@assurrussa
Mar 03 2015 02:57
Особенно помощь новичкам
@Big-Shark почему?
Maxim
@Big-Shark
Mar 03 2015 02:58
@assurrussa ну я допустим не люблю виджеты, и немного не согласен с тем как это все работает у @greabock , поэтому это мне и не интересно) Но думаю в любом случае это комуто будет полезно.
Artur Gafurov
@assurrussa
Mar 03 2015 02:59
Что плохого в разбиение логики приложения по папкам и независимости друг от друга?
А как бы ты это лучше делал?
Maxim
@Big-Shark
Mar 03 2015 03:02
@assurrussa это утопия) Она идеально работает в голове, и на малых проектах) Я не люблю разбивать код на бандлы(Модули и тд), если они таковыми не являются, если они будут работать только в составе одного приложения, контролеры я также предпочитаю не разбивать, а дублировать структуру урл ими, так сразу понятно что где искать, контролеры делаю максимально тонкими, но не перехожу на крайности без необходимости.
Artur Gafurov
@assurrussa
Mar 03 2015 03:07
@Big-Shark Твоя позиция ясна)))) я большими проектами не занимался ещё, почему то представляю что разбиение логики это отличное решение.
Maxim
@Big-Shark
Mar 03 2015 03:09
@assurrussa на любителя. Обычно все компоненты системы очень сильно связаны друг с другом, и в результате приходется постоянно прыгать из папки в папкую
LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

Orel
@2byte
Mar 03 2015 07:44
Всем привет
censoredgit
@censoredgit
Mar 03 2015 08:39
@2byte привет
LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

Kirill Nesmeyanov
@SerafimArts
Mar 03 2015 09:18
Всем чмаффки в этом чатеге!
:D
sergio-l
@sergio-l
Mar 03 2015 09:26
Всем привет. Подскажите используете Вы сторонние пакеты для создания админ части сайта, типа этого http://habrahabr.ru/post/240809/ . Может кто нибуть знает хорошие заметки по построению админ части.
Brezhnev Ivan
@vanchelo
Mar 03 2015 09:27
@sergio-l я его использую
sergio-l
@sergio-l
Mar 03 2015 09:32
и как, он типа уже установит демо админку. Обьясните подробнее пожалуйста.
Brezhnev Ivan
@vanchelo
Mar 03 2015 09:35
кто он?
поставьте этот пакет и посмотрите)
Igor Lugis
@dragonattack
Mar 03 2015 09:35
вот что у вас будет http://sleeping-owl-admin-demo.gopagoda.com/
Alexander Popov
@ruelephant
Mar 03 2015 09:49
кто-то таки форкнулся
Orel
@2byte
Mar 03 2015 09:58
@vanchelo а как мне было сделать по другому?
Brezhnev Ivan
@vanchelo
Mar 03 2015 09:59
@2byte ты о чем?
Alexander Popov
@ruelephant
Mar 03 2015 09:59
напомните мне написать нейронную сеть
опять забыл
Orel
@2byte
Mar 03 2015 10:00
@vanchelo про мой вызов контроллера из иок
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:00
хз
Orel
@2byte
Mar 03 2015 10:01

@vanchelo а вот мне помог @sleeping-owl выслал вот такое решение)

Route::get('/', function ()
{
    $router = App::make('router');
    $dispatcher = $router->getControllerDispatcher();
    $route = $router->current();
    $request = App::make('request');

    $controller = 'HomeController';
    $method = 'showWelcome';

    if (...)
    {
        $controller = 'OtherController';
        $method = 'otherMethod';
    }
    return $dispatcher->dispatch($route, $request, $controller, $method);
});

Но так быть не должно, это недоработка

Brezhnev Ivan
@vanchelo
Mar 03 2015 10:02
)))
Alexander Popov
@ruelephant
Mar 03 2015 10:02
что это за ужас?
Orel
@2byte
Mar 03 2015 10:03
И нейронная сеть непонадобилсь
Alexander Popov
@ruelephant
Mar 03 2015 10:03
вы меня пугаете
Orel
@2byte
Mar 03 2015 10:03
@ruelephant ща
Artem
@superhard
Mar 03 2015 10:03
Ламповый у вас тут чатик. Чуваки, подскажите подобного уровня русскоязычные чатики в гиттере
Круто если есть по питону, рубям, objective-c что-то подобное, может по js
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:04
какой направленности?
@superhard вот тут много чатов https://github.com/dev-ua
Alexander Popov
@ruelephant
Mar 03 2015 10:04
и мне по кройке и шытью
SergeyMiracle
@SergeyMiracle
Mar 03 2015 10:04
по готовке
Alexander Popov
@ruelephant
Mar 03 2015 10:05
разведению персиков в условиях крайнего севера
в открытом грунте
SergeyMiracle
@SergeyMiracle
Mar 03 2015 10:05
@ruelephant ого, с языка сорвал :)
Alexander Popov
@ruelephant
Mar 03 2015 10:06
потом снимем триллер, вырастить за 24 часа (пока день идет)
Artem
@superhard
Mar 03 2015 10:09
:point_up: 3 марта 2015 г., 13:04 Вот тут все это видел, да и вас там же нашел https://github.com/mr-mig/ru-it-chats. Не верится, что это абсолютно все русскоязычные сообщества, пока из всего, что успел просмотреть, у вас тут самая годная тусовка.
@ruelephant и по бисероплетению
Maxim
@Big-Shark
Mar 03 2015 10:10
@superhard конечно не все, нас допустим там небыло еще несколько дней назад. А у нас самый большой чат на гитере рускоязычный
@vanchelo слушай, а ты не знаеш почему сейчас так модно делать Ru и UA, раньше все сидели в одинх чатах, и нормально было
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:13
хз
Alexander Popov
@ruelephant
Mar 03 2015 10:14
@Big-Shark потому что "Україна це європа", очевидно же
Artem
@superhard
Mar 03 2015 10:15
@Big-Shark Чтобы идентифицировать что чат локальный. А есть какое-то обозначение для всех русскоговорящих, разве что SU х)
Maxim
@Big-Shark
Mar 03 2015 10:16
@ruelephant ну на одном языке ведь говорим (Насколько я знаю почти все Украинцы говорят по русски) так зачем плодить чаты, так англии, штатам, канаде и тд нужно каждой свой чат иметь?
Alexander Popov
@ruelephant
Mar 03 2015 10:16
@Big-Shark УГМ ибо
УкраинаГоловногоМозга
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:16
@ruelephant заканчивай
Alexander Popov
@ruelephant
Mar 03 2015 10:16
ну я отвечаю на вопрос @Big-Shark
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:16
у тебя для таких заявлений отдельный чат
ок?
Alexander Popov
@ruelephant
Mar 03 2015 10:17
а я то что? это @Big-Shark спросил
Artem
@superhard
Mar 03 2015 10:17
@vanchelo согласен, уж где, где, а в айтишных сообществах точно не место для политосрача
Alexander Popov
@ruelephant
Mar 03 2015 10:17
"почему украина отдельно"
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:18
@ruelephant ты плохо читать умеешь?
не важно кто тебя спросил
SergeyMiracle
@SergeyMiracle
Mar 03 2015 10:18
лучше поспорьте про лару
остальное оставьте для ТВ работников
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:19
здесь всё что касается политики не обсуждается
Alexander Popov
@ruelephant
Mar 03 2015 10:20
:\
SergeyMiracle
@SergeyMiracle
Mar 03 2015 10:20
не расстраивайся :)
Artem
@superhard
Mar 03 2015 10:20
Чаты англоязычные по дефолту, им не нужно както специализированно именовать комнаты. А вот вопрос как правильно именовать чат, захватив всех русскоязычных людей, и указав что именно тут говорят на конкретном языке
Maxim
@Big-Shark
Mar 03 2015 10:23
@superhard насколько я знаю обычно делают ЕС Для всях испано говорящих, так почему бы не использовать РУ, для всех рускоговорящих(Мы с Узбекистаном работали, так там почти все говорят на русском, и админ говорит что вся документация либо ру, либо англ)
Artem
@superhard
Mar 03 2015 10:24
Вообще, заходя в чат с названием -ua, чувствуешь себя как то не на своем месте, так же как и зайди я на -by. Соответсвенное ощущение и у тех кто приходит на *-ru
Maxim
@Big-Shark
Mar 03 2015 10:24
@superhard возможно. Хотя есть еще вариант su
Alexander Popov
@ruelephant
Mar 03 2015 10:24
ну блин
Artem
@superhard
Mar 03 2015 10:24
@Big-Shark я про это и сказал чуть выше
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:25
меня префиксы и постфиксы не напрягают, главное чтобы я получил ответы на свои вопросы
SergeyMiracle
@SergeyMiracle
Mar 03 2015 10:26
+1 @vanchelo
Maxim
@Big-Shark
Mar 03 2015 10:26
@vanchelo я просто начал сталкиваться с дублирование, 2 чата, первую ру, второй уа, но и в том и в другом общяются на русском.
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:26
на ua украинский проскакивает
на ember сообществе
Artem
@superhard
Mar 03 2015 10:26
Самое прекрасное вообще без префиксов, но тогда от зарубежных не отличить
Alexander Popov
@ruelephant
Mar 03 2015 10:26
да на украинском общаются на русском, но там дело именно в том что они хотят отдельно
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:27
был и есть час по ларе на слаке
там все на англ говорят
и кучей гифок чат засерают
у них как-будто сейчас такой тренд, выражаться гифками
Maxim
@Big-Shark
Mar 03 2015 10:27
@vanchelo я туда кстати так и не смог попасть, это замена ирке у них, или это просто фан чат типа?
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:28
хз
мне там не понравилось
Alexander Popov
@ruelephant
Mar 03 2015 10:31
не выйдет пока с украиной общего чата, с обоих сторон куча "УРА патриотов", доходит до маразма местами, например я знаю людей с "имперскими взглядами" которые отказывают есть борщ. И это констатация факта
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:31
@ruelephant на нафига?
Alexander Popov
@ruelephant
Mar 03 2015 10:32
борщ украинский
а они только "черное" и "белое" так сказать воспринимают. Полутонов у таких людей нет
Artem
@superhard
Mar 03 2015 10:32
есть русский борщ, и это два разных блюда, насколько я знаю
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:32
@ruelephant завязывай
сколько раз надо попросить адекватного человека чтобы он понял?
Alexander Popov
@ruelephant
Mar 03 2015 10:33
ну вы же сами такую тему выбрали блин
тут нельзя объяснить без политика совсем почему чат отдельный
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:33
отдельный от чего?
он таковым всегда был
этот чат был создан для сообщества лары
здесь не только с рф ребята
Alexander Popov
@ruelephant
Mar 03 2015 10:35
это понятно
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:36
если бы продукт Ларавел изначально был местного производства то и чат по дефолту был бы без постфикса
неужели вам это непонятно?
Alexander Popov
@ruelephant
Mar 03 2015 10:36
я просто к тому, что "комунизм по ларе" в рамках СНГ даже не выйдет сделать :)
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:36
причем тут вообще коммунизм
или снг
Alexander Popov
@ruelephant
Mar 03 2015 10:37
ну ты позиционируешь чат как "всея руси"
Artem
@superhard
Mar 03 2015 10:37
Он наверно о LaravelCIS
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:37
какой всея руси
очнись
чат для тех кто знает русский язык
и кому на нем общаться кофортно
Alexander Popov
@ruelephant
Mar 03 2015 10:39
с оговоркой что эти люди еще в одном "пропогандиском поле"
Роман Сохарев
@greabock
Mar 03 2015 10:40
@ruelephant завязывай. У нас тут и мусульмане были и евреи и яро-православные, и атеисты - мы всех выгнали. Остались только программисты =)
Alexander Popov
@ruelephant
Mar 03 2015 10:40
ну фигли вы поднимаете такие темы то
если "завязывай"
нельзя от них отвязатся в таком контексте
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:41
у тебя недержание?
Igor Lugis
@dragonattack
Mar 03 2015 10:41
вопрос по ларе можно?))
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:41
нужно
Igor Lugis
@dragonattack
Mar 03 2015 10:42
из модели роут этой модели можно узнать? ща опишу подробнее
Alexander Popov
@ruelephant
Mar 03 2015 10:42
@vanchelo причем тут недержание, просто мы конечно можем делать вид что ничего не происходит. Но это тогда не до конца будет точки над И расставлены, а если мы перфекционируем на какой то теме то либо мы ее полностью обговариаем, либо вообще молчим. Ну это имхо
Роман Сохарев
@greabock
Mar 03 2015 10:42
@dragonattack ты сейчас мой мозг вывернул наизнанку =)
Alexander Popov
@ruelephant
Mar 03 2015 10:43
@greabock он сейчас подробно опишет :)
Igor Lugis
@dragonattack
Mar 03 2015 10:43
не спеши)
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:44
@ruelephant конкретно в этом чате ничего о том что ты писал выше не происходит.
Alexander Popov
@ruelephant
Mar 03 2015 10:47
@vanchelo я не хочу это обсуждать в таком ключе, иначе нам придется глубоко залезть в политику.
Igor Lugis
@dragonattack
Mar 03 2015 10:49
делаю BaseModel extends Eloquent, потом Post extends BaseModel, Comment extends BaseModel и т.д. наследую общую модель, в которой много общих методов. один из них это url() — узнаю url до, скажем /posts/1, /comments/1 . обычно url() выглядит так: public function url() { return route('comments.show', array($this->id)); }
вопрос, как вынести этот метод в BaseModel
что написать вместо 'comments.show'
чтобы оно отрабатывало и 'posts.show'
Alexander Popov
@ruelephant
Mar 03 2015 10:51
ну я считаю это архитектурно не правильно пилить такие методы в модели
Igor Lugis
@dragonattack
Mar 03 2015 10:51
допустим. а где правильно?
Alexander Popov
@ruelephant
Mar 03 2015 10:52
а где ты используешь метод url?
Igor Lugis
@dragonattack
Mar 03 2015 10:52
во вьюхах.
sergio-l
@sergio-l
Mar 03 2015 10:52
@vanchelo, пытаюсь установить админку вот эту https://github.com/sleeping-owl/admin, делаю все как написано там, но при composer update возникает ошибка http://prntscr.com/6c4hy7. Composer другие пакеты устанавливает. Не подскажите в чем может быть проблема ?
Alexander Popov
@ruelephant
Mar 03 2015 10:53
@sergio-l сделай composer self-update
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:53
class BaseModel {
    function url() {
        return route(str_plural(strtolower(get_class($this))) . 'show', $this->id);
    }
}

class Comment extends BaseModel {}

echo (new Comment)->url(); // comments
Igor Lugis
@dragonattack
Mar 03 2015 10:55
костылёк, выходит.. думал есть решения готовые для этого.
Alexander Popov
@ruelephant
Mar 03 2015 10:55
@dragonattack я бы сделал просто получение текущего URL во вьюхе
а ID брал из модели
Igor Lugis
@dragonattack
Mar 03 2015 10:55
вот это кстати да
логичнее
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:56
где костылек?
Alexander Popov
@ruelephant
Mar 03 2015 10:56
у тебя
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:56
для этого делают презентеры
модель ничего не должна знать о роутах
sergio-l
@sergio-l
Mar 03 2015 10:56
@ruelephant , сделал. Спасибо.
Alexander Popov
@ruelephant
Mar 03 2015 10:57
@vanchelo я ему уже выше дал решение
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:57
во вьюхе получать URL?
Alexander Popov
@ruelephant
Mar 03 2015 10:57
да
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:57
костылек
Alexander Popov
@ruelephant
Mar 03 2015 10:57
а у тебя блин не костылек?
str_plural(strtolower(get_class($this)))
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:58
я такого не говорил
Alexander Popov
@ruelephant
Mar 03 2015 10:58
вот это особенно
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:58
в ларавел если ты не в курсе так кишки работают
как ты думал название таблицы для модели ларавел получает?
NelinD
@NelinD
Mar 03 2015 10:59
@vanchelo магия?
Brezhnev Ivan
@vanchelo
Mar 03 2015 10:59
если кто не знал
public function getTable()
    {
        if (isset($this->table)) return $this->table;

        return str_replace('\\', '', snake_case(str_plural(class_basename($this))));
    }
Igor Lugis
@dragonattack
Mar 03 2015 10:59
vanchelo, ларавел именно тем и хорош, что вся грязная работа остаётся «за кулисами»
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:00
вот ты можешь взять этот метод
Igor Lugis
@dragonattack
Mar 03 2015 11:00
а нам остаётся только няшность)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:00
return route($this->getTable() . '.show', $this->id)
Alexander Popov
@ruelephant
Mar 03 2015 11:01
@vanchelo ну нельзя же его использовать такое, а вдруг роуты кустомезированы и название контролера не совпадает
Igor Lugis
@dragonattack
Mar 03 2015 11:01
да, спасибо, это ровно то, что я искал)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:01
@ruelephant вопрос был не в этом, я согласен что нельзя, и выше написал об этом
Igor Lugis
@dragonattack
Mar 03 2015 11:02
но теперь я ещё подумаю, как лучше. через getTable или во вьюхе route()
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:02
если названия роутов не будет совпадать с названием моделей то ничего работать не будет
Alexander Popov
@ruelephant
Mar 03 2015 11:03
ага
посему в вьехе я бы получал URL
Igor Lugis
@dragonattack
Mar 03 2015 11:04
угу, и это ещё одна причина почему мне этот «костылёк» не понравился
вообще же есть Route::model('post', 'Post');
т.е. связь модели и роута есть
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:05
свяжи)
Igor Lugis
@dragonattack
Mar 03 2015 11:05
хотя пардон, это чуть-чуть другое
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:06
это для автоматического биндинга
Route::get('{post}/{id}')
Igor Lugis
@dragonattack
Mar 03 2015 11:06
'post' в данном случае отвечает за {post} в /posts/{post}
да
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:07
никогда не пользовался этим, так как поведение не очень очевидное
Igor Lugis
@dragonattack
Mar 03 2015 11:11
но вообще, мне кажется урл вполне себе должен/мог бы описываться в модели. а то мы постоянно повторяем: {{ route('comments.show', array($comment->id)); }} проще было бы {{ $comment->url() }}
Alexander Popov
@ruelephant
Mar 03 2015 11:11
cделай хелпер
Igor Lugis
@dragonattack
Mar 03 2015 11:12
всё равно я должен буду туда передавать название роута "comments" или "posts" и т.д.
Alexander Popov
@ruelephant
Mar 03 2015 11:12
ну логично
зато магии нету
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:12
я делал как-то что-то такого плана my_route($comment)
можешь создать трейт для моделей
traite Routeable
Alexander Popov
@ruelephant
Mar 03 2015 11:13
ууу понеслось
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:13
или интерфейс
или карту соответствия сделать
такой то класс имеет такой-то префикс в роуте
App\Comment => comments
Igor Lugis
@dragonattack
Mar 03 2015 11:14
во всех этих случаях, я отдельно от рутов это буду прописывать, так ведь?
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:14
да
Igor Lugis
@dragonattack
Mar 03 2015 11:15
т.е. роуты сами по себе, а это отдельно
ясн.
буду пока из вьюх тогда)
городить тут пока не нужно.
на этом уровне
тем более, что урлы простые пока
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:16
Route::get(['prefix' => prefix(User::class)])
prefix напишешь сам, в нем соотв. или магия или словарь
и будет всё в одном месте
можешь роутер наследовать))
Igor Lugis
@dragonattack
Mar 03 2015 11:18
норм, но тогда руты в коде становятся нечитаемыми. обычно когда сам видишь такое в чужом коде, думаешь: WTF!!?? :)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:18
IDE в помощь
в каком-то месте приложения в любом случае придется от чего-то отталкиваться
я не представляю как сделать чтобы всегда работало и при этом ничего нигде не прописывать, и чтобы от роутов не зависеть
или юзать как тебе сказал @ruelephant route::segment(1)
но тогда если я захочу показать блок с коментами на главной, куда будет ссылка вести?
на главную /1?
Igor Lugis
@dragonattack
Mar 03 2015 11:22
ну мысль изначально была: прописать в одном месте. всё, приложение уже о роуте знает, и как к нему обращаться. соответственно оно же и может сгенерировать этот урл. почему нет?
LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

Igor Lugis
@dragonattack
Mar 03 2015 11:23
погуглив + из беседы, я понимаю, что такого нет. поэтому сделаю следующим по простоте способом.
и более общепринятым
Jake Popoff
@indeveler
Mar 03 2015 11:23
привет
Igor Lugis
@dragonattack
Mar 03 2015 11:23
привет :)
Jake Popoff
@indeveler
Mar 03 2015 11:24
скажите, есть ли смысл изучать Laravel 4? или сразу двигать на 5?
slider23
@slider23
Mar 03 2015 11:24
Список русских гиттер- и скайп- чатов IT тематики: https://github.com/mr-mig/ru-it-chats
@indeveler сразу 5 можно
вот эту серию статей на 5 заморочно перенести?
или выполнить все то же самое на 5)
короче, народ
Igor Lugis
@dragonattack
Mar 03 2015 11:25
я на 4 пока, т.к. почти весь материал в сети пока ещё по 4.
slider23
@slider23
Mar 03 2015 11:25
упс, эту ссылку с чатами уже постили.
Jake Popoff
@indeveler
Mar 03 2015 11:25
вопрос даже еще глобальней)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:25
@indeveler какие у тебя знания пхп?
Jake Popoff
@indeveler
Mar 03 2015 11:25
я в свое время на Slim PHP Framework написал две CMSки)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:26
тогда бери сразу 5-ку
Jake Popoff
@indeveler
Mar 03 2015 11:26
две основательно разных версии
теперь вот хочу писать третью CMS))
и думаю какой фреймворк выбрать
Phalcon. Yii2. Laravel.
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:26
октябрь цмс не нравится?
Jake Popoff
@indeveler
Mar 03 2015 11:26
или остаться на слиме
смотрел октябрь
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:26
слим совсем маленький
Jake Popoff
@indeveler
Mar 03 2015 11:27
маленький, ага
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:27
много писать приходится руками
Maxim
@Big-Shark
Mar 03 2015 11:27
http://habrahabr.ru/post/252013/ интересный вариант
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:27
очень много
Jake Popoff
@indeveler
Mar 03 2015 11:27
в этом есть свой кайф)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:27
тогда бери фалькон
там тоже много писать приходится
Jake Popoff
@indeveler
Mar 03 2015 11:27
щупаю
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:27
но он изначально круче слима
Jake Popoff
@indeveler
Mar 03 2015 11:28
фалькон разросся неплохо
всмысле. развился))
Maxim
@Big-Shark
Mar 03 2015 11:28
@vanchelo ты же унас спец по фалькону?
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:28
в ларике писать меньше в разы чем в фальконе или слиме
Jake Popoff
@indeveler
Mar 03 2015 11:28
на слиме возник стопор, когда дело дошло до локализации бекенда
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:28
@Big-Shark ну я для фалькона пакеты делал)
mailer из лары портировал на него
и аякс консоль
Maxim
@Big-Shark
Mar 03 2015 11:29
@vanchelo насколько он даст прирост по сравнению с пхп, на твой взгляд
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:29
гигантский прирост
памяти очень очень мало потребляет
т.к. ядро уже загружено
но беда с разработкой
исходники не покурить
т.к. они на Си
Maxim
@Big-Shark
Mar 03 2015 11:30
@vanchelo ну смотри, симфони 2 голая у меня отрабатывает за 3мс и 6 мб памяти, ну как голая, почти голая)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:30
фалькон голый < 512К потребляет
Maxim
@Big-Shark
Mar 03 2015 11:30
@vanchelo дальше уже чисты пхп идет, ну и работа с БД, в фолконе же чистый пхп будет работать с той же скоростью
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:30
а старт меньше 1мс
с той же
Jake Popoff
@indeveler
Mar 03 2015 11:30
основная цель моей третьей CMS - конструктор сайтов с разделением ролей на контент-менеджмент и шаблонный дизайн.
и выйти с ней на open source.
Phalcon прям нравится, еще когда 0.5 версией был я его ставил и пробовал пример написать
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:30
только там и ОРМ на Си
Maxim
@Big-Shark
Mar 03 2015 11:30
@vanchelo как там ОРМ, достойный ?
Jake Popoff
@indeveler
Mar 03 2015 11:31
он хорошо документирован
и у него Twig-like шаблонизатор)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:31
орм на любителя
но привыкнуть можно
связи все есть
Jake Popoff
@indeveler
Mar 03 2015 11:31
ORM можно прикрутить и другой на край
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:31
еще там свой язык PHQL
Jake Popoff
@indeveler
Mar 03 2015 11:31
в слиме я юзал idiorm)
Maxim
@Big-Shark
Mar 03 2015 11:32
Интересует именно скорость ОРМ, так как на мой взгляд это сейчас одно из самых узких мест
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:32
тот же SQL только со вставками фальконавскими
Maxim
@Big-Shark
Mar 03 2015 11:32
Ну также как и dql
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:32
idiorm не для взрослых приложений
Jake Popoff
@indeveler
Mar 03 2015 11:32
думаю, что скорость ORM не от интерпретатора зависит, а от СУБД
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:33
это время запроса + сетевые издержки
Maxim
@Big-Shark
Mar 03 2015 11:33
@indeveler и ошибаешься)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:33
если рассматривать чисто ядро ORM то одна от другой сильно разняться
мы рассматриваем именно ORM
Jake Popoff
@indeveler
Mar 03 2015 11:34
ок. PDO от Phalcon ORM сильно отличается по скорости работы?
оба, фактически, расширения PHP
Maxim
@Big-Shark
Mar 03 2015 11:34
Да на запросе в 10 записей почти все ОРМ покажут минимальное время, но на запросе 300 записей каждая с 10ком связей и сортировок, и вот тут уже будет минимальная разница
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:35
вот именно
@indeveler PDO это не орм
Maxim
@Big-Shark
Mar 03 2015 11:35
@indeveler а ПДО и не ОРМ)
)))
Jake Popoff
@indeveler
Mar 03 2015 11:35
большинство PHP ORM, которые я встречал, - надстройки над PDO
Maxim
@Big-Shark
Mar 03 2015 11:35
Либо нужно вернуть массив, либо коллекцию классов, котоыре нужно перед этим еще и создать)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:35
да, и Eloquent так же
Maxim
@Big-Shark
Mar 03 2015 11:36
Они работают с ПДО, но они не наследуют его
Jake Popoff
@indeveler
Mar 03 2015 11:36
тогда есть смысл сравнить PDO с PHQL?
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:36
а мы PDO и не сравниваем
Jake Popoff
@indeveler
Mar 03 2015 11:36
короче, надо делать на фальконе
правильно?)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:37
если он тебе нравится делай конечно
есть чат по фалькону
спроси там
Jake Popoff
@indeveler
Mar 03 2015 11:37
да мне все нравится, на само деле
Jake Popoff
@indeveler
Mar 03 2015 11:37
ага, у меня открыть этот чат
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:37
ларик в разы дружелюбнее фалькона
Maxim
@Big-Shark
Mar 03 2015 11:37
Ну и смотри что ыт хочеш от ЦМС, если выбрать фалкон то явно будет меньше пользователей из за сложности установки
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:37
конечно
т.к. только на ВПСках смогут поставить
Jake Popoff
@indeveler
Mar 03 2015 11:38
от CMS я хочу, в первую очередь, конструктор сайтов
есть специализированные хостинги для фалкона
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:38
на шаред уже не поставишь без пинания саппорта
и не факт что для тебя один будут модуль фалькона ставить
или делать свою площадку
и продавать не CMS а место
Jake Popoff
@indeveler
Mar 03 2015 11:38
вот
это и есть задача номер раз
Maxim
@Big-Shark
Mar 03 2015 11:39
@indeveler ну вот и думай, он только для тебя, для других программеров, или для каждого студента как вордпресс)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:39
если у @indeveler свои клиенты и свою площадка, то это лучший вариант
т.к. это абонентка
через n клиентов можно будет не работать
Jake Popoff
@indeveler
Mar 03 2015 11:40
для меня, как программиста веб-студии
и для пользователей, которые на абонентской плате делают себе сайты
спасибо)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:41
с таким же успехом ты можешь и на джанге писать CMS)
или на ноде
или на Play)
Maxim
@Big-Shark
Mar 03 2015 11:41
Ну я бы не выбирал фалкон для кмс, так как распространение будет сложней, да и самому использовать сложней, а в кмс обычно скорость не особо нужна
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:41
да даже на Meteor
Jake Popoff
@indeveler
Mar 03 2015 11:41
согласен. это вопрос времени на вхождение
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:42
ты JS знаешь?
Jake Popoff
@indeveler
Mar 03 2015 11:42
гораздо быстрее подружиться с php продуктом
не настолько, чтобы писать на ноде
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:42
на метеоре не думаю что у тебя возникнут трудности
Jake Popoff
@indeveler
Mar 03 2015 11:42
или meteor
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:42
берешь TypeScript
тот же PHP
Maxim
@Big-Shark
Mar 03 2015 11:43
@vanchelo а смысл?
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:43
смысл познать что-то более удобное)
Maxim
@Big-Shark
Mar 03 2015 11:43
@vanchelo ну я бы тогда предложил руби)
Alexander Popov
@ruelephant
Mar 03 2015 11:43
jphp
не?
Jake Popoff
@indeveler
Mar 03 2015 11:44
руби для cms?
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:44
только не руби) лучше действительно jphp
там и вставки с Java можно брать
а джава похожа на пых
Alexander Popov
@ruelephant
Mar 03 2015 11:44
там полноценно можно юзать жаба либы
а их вагоны
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:44
вот
можно и на андройд CMS портировать
Alexander Popov
@ruelephant
Mar 03 2015 11:45
писать полноценные GUI на php
Jake Popoff
@indeveler
Mar 03 2015 11:45
чет хз)
Alexander Popov
@ruelephant
Mar 03 2015 11:46
с честной многопоточностью
Maxim
@Big-Shark
Mar 03 2015 11:46
а еще есть хак)
Jake Popoff
@indeveler
Mar 03 2015 11:46
чтобы потом на этом конструкторе делать магазинчики на 30 товаров?
Alexander Popov
@ruelephant
Mar 03 2015 11:46
пришел @Big-Shark и все испортил
slider23
@slider23
Mar 03 2015 11:46
Имхо писать такую сложную хрень как CMS, да еще и продавать её за деньги, в наше время битриксов и друпалов, надо на фреймворке, который знаешь как родной.
Maxim
@Big-Shark
Mar 03 2015 11:47
@vanchelo да начнется бой любителя руби и любителя жс?
slider23
@slider23
Mar 03 2015 11:47
Потому что чтобы написать конкурентноспособное, надо написать дофига всего.
Alexander Popov
@ruelephant
Mar 03 2015 11:47
@Big-Shark threesome с питоном
slider23
@slider23
Mar 03 2015 11:47
С этой точки зрения ларавель предпочтительнее, так как у него больше пакетов чем у фалькона.
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:47
@Big-Shark =)
@slider23 согласен
Maxim
@Big-Shark
Mar 03 2015 11:48
на ларе уже куча КМС, только вот ничего кроме октября еще не взлетело
Jake Popoff
@indeveler
Mar 03 2015 11:48
есть пример какого-нибудь магазина на ларавел?
на октябре можно магазин сделать, к примеру?
Alexander Popov
@ruelephant
Mar 03 2015 11:48
да я видел где то валялся
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:48
да
да и самому написать компонент не проблема
там довольно просто это делать
Maxim
@Big-Shark
Mar 03 2015 11:49
Можно, причем судя по статье на хаюре достаточно легко
slider23
@slider23
Mar 03 2015 11:49
Октябрь тоже не взлетел. Точнее, все на него ринулись, потому что он красивый, а потом.. эээм...
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:49
в нем от ларика мало что осталось)
модели они переделали
связи массивами теперь строятся
Maxim
@Big-Shark
Mar 03 2015 11:50
@slider23 ну по сравнению с другим новыми ЦМС это прям взлет, так как давно уже нет новых КМС которые хоть как-то бы выделялись
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:52
@Big-Shark cockpit =)
Maxim
@Big-Shark
Mar 03 2015 11:53
@vanchelo ну кокпит штука интересная, но на русском нет не одной статья, а это уже показатель
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:54
самый жирный её плюс это встраиваемость в любую систему
slider23
@slider23
Mar 03 2015 11:54
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:54
не
он же на Silex
Maxim
@Big-Shark
Mar 03 2015 11:54
@vanchelo угу, но и минус есть, это гавнокод внутри)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:54
)
Alexander Popov
@ruelephant
Mar 03 2015 11:55
кстати все читали вчерашнее наше?
Maxim
@Big-Shark
Mar 03 2015 11:55
что?
Alexander Popov
@ruelephant
Mar 03 2015 11:55
швырялись говнокодом из продакшена в 11 вечера
slider23
@slider23
Mar 03 2015 11:55
да, силекс с доктриной и твигом сверху
Jake Popoff
@indeveler
Mar 03 2015 11:55
болт как раз уже похож на конструктор. но он на silex, что впринципе тоже рассматривается как вариант
особенно после slim :)
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:56
я не люблю силекс
недо симфоня
Jake Popoff
@indeveler
Mar 03 2015 11:56
к тому же можно, как я понял, в silex затянуть любой компонент из симфонии
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:56
бери сразу симфони
там и DI нормальный
а в Silex Pimple
Alexander Popov
@ruelephant
Mar 03 2015 11:56
мне не нравится симфони
из за "управляющих комментов"
Jake Popoff
@indeveler
Mar 03 2015 11:56
у меня на локальном компе проекты на symfony 2 грузятся по несколько минут
не я их писал
я их дорабатывал, в основном с версткой
работал
я не умею ее готовить, это факт
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:57
голая симфони работает как голая лара 5
Jake Popoff
@indeveler
Mar 03 2015 11:57
и так и не понял причины ее использования на некоторых сайтах-визитках, которые мне скидывали на доработку
Brezhnev Ivan
@vanchelo
Mar 03 2015 11:58
визитки на ней пилить жестко)))
Jake Popoff
@indeveler
Mar 03 2015 11:58
визитки с нетрадиционным функционалом, скажем так
Alexander Popov
@ruelephant
Mar 03 2015 11:58
симфони это оверинженеринг в российских реалиях
некоторые компании Yii бы адекватно начали использовать
Maxim
@Big-Shark
Mar 03 2015 11:58
http://www.pagekit.com/ вроде альфу выпустили, эти чуваки могут раскрутить кмс
У нас все новые проекты на симфони2, стандарт мол)
Andrew Gurinovich
@altmind
Mar 03 2015 11:59
подскажите, в eloquentorm есть аналог saveMany, который не только добавляет ключи, но и удаляет старые
т.е. replace associations
Alexander Popov
@ruelephant
Mar 03 2015 12:00
@Big-Shark печально вам, "для строительных работ мы используем исключительно высокоточные электронные микроскопы"
Maxim
@Big-Shark
Mar 03 2015 12:00
@vanchelo я тебе наврал про кокпит, одна статья есть http://webtoks.ru/php/vvedenie-cockpitcms-cms-dlya-razrabotchikov/
Andrew Gurinovich
@altmind
Mar 03 2015 12:01
many-to-many $item->tags()->saveMany($tags);
Maxim
@Big-Shark
Mar 03 2015 12:02
@slider23 болт 1700 звезд на гитхабе, кокпит 1350, октябрь 2560, пейджкит 1560
Brezhnev Ivan
@vanchelo
Mar 03 2015 12:04
@altmind неа, такого метода нет
saveMany есть метод
а вот то что ты выше описал нет
Class HasMany
/**
     * Attach an array of models to the parent instance.
     *
     * @param  array  $models
     * @return array
     */
    public function saveMany(array $models)
    {
        array_walk($models, array($this, 'save'));

        return $models;
    }
Andrew Gurinovich
@altmind
Mar 03 2015 12:06
ok. как просто руками почистить ассоциации? готового метода вроде бы нет http://laravel.com/api/5.0/Illuminate/Database/Eloquent/Relations/HasOneOrMany.html
LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

Andrew Gurinovich
@altmind
Mar 03 2015 12:06
(читаю доку, может просто кто-то быстрее подскажет)
Brezhnev Ivan
@vanchelo
Mar 03 2015 12:07
есть такой то метод matchMany
но как его готовить не знаю к сожалению
Andrew Gurinovich
@altmind
Mar 03 2015 12:07
мб detach?
Brezhnev Ivan
@vanchelo
Mar 03 2015 12:09
такого метода я не нашел
Andrew Gurinovich
@altmind
Mar 03 2015 12:20
$movement->tags()->detach();
$movement->tags()->saveMany($tags);
все обернуто в транзакцию, теперь дает Lock wait timeout exceeded; try restarting transaction
Denis Isaychenko
@Rhincodon
Mar 03 2015 12:20
sync, detach, attach
Andrew Gurinovich
@altmind
Mar 03 2015 12:20
на delete frommovement_tagswheremovement_id= 3201
Brezhnev Ivan
@vanchelo
Mar 03 2015 12:21
где ты метод detach нашел?
Andrew Gurinovich
@altmind
Mar 03 2015 12:21
detach(внутри delete) что-ли создает новую транзакцию?
Denis Isaychenko
@Rhincodon
Mar 03 2015 12:22
Brezhnev Ivan
@vanchelo
Mar 03 2015 12:22
у тебя же был HasMany
Andrew Gurinovich
@altmind
Mar 03 2015 12:22
ошибся докой тогда
Brezhnev Ivan
@vanchelo
Mar 03 2015 12:22
аааа
Denis Isaychenko
@Rhincodon
Mar 03 2015 12:23
@altmind sync синхронизирует теги, удаляет и добавляет новые если надо при связи many to many через pivot таблицу
Brezhnev Ivan
@vanchelo
Mar 03 2015 12:23
sync не?
tags()->sync($tags)
мне кажется он делает то что тебе нужно
Andrew Gurinovich
@altmind
Mar 03 2015 12:24
попробую, странно, он ids принимает
Brezhnev Ivan
@vanchelo
Mar 03 2015 12:24
не только
коллекцию принимает
public function sync($ids, $detaching = true)
    {
        $changes = array(
            'attached' => array(), 'detached' => array(), 'updated' => array()
        );

        if ($ids instanceof Collection) $ids = $ids->modelKeys();
или массив IDs
Andrew Gurinovich
@altmind
Mar 03 2015 12:25
нет, не оно
sync с 3 entities, а в $movement->tags() после сейва array()
мб. дело в том, что entities не сохранены(новые)
Andrew Gurinovich
@altmind
Mar 03 2015 13:03
btw. под php есть профайлер?
xdebug вроде бы и работает, но какого размера там файлы и насколько он все замедляет
скрипты по таймауту отваливаются :)
может от newrelic есть кусок из агента?
Daniel Podrabinek
@grohman
Mar 03 2015 13:05
Привет! У меня тут странная фигня с davibennun/laravel-push-notification (это враппер для Sly/NotificationPusher) - на одном из серваков при отправке пуша ругается на Unable to enable crypto on TCP connection android.googleapis.com - и всё, никакой сопроводительной инфы об ошибке. Искал в гугле, но чего-то ничего полезного не нашёл. Можете помочь, пожалуйста?
Andrew Gurinovich
@altmind
Mar 03 2015 13:06
случайно не windows?
Daniel Podrabinek
@grohman
Mar 03 2015 13:06
debian
локально в homestead'е всё окей, вообще не догадываюсь куда смотреть. Все апдейты на дебиане установлены, чего с ним делать-то...
Andrew Gurinovich
@altmind
Mar 03 2015 13:10
(я бы проверил cacerts)
LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

Daniel Podrabinek
@grohman
Mar 03 2015 13:12
@altmind извините, пожалуйста, вы могли бы уточнить?
LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

Andrew Gurinovich
@altmind
Mar 03 2015 13:18
@grohman что говорит echo "<?php echo fsockopen('ssl://android.googleapis.com', 443); ?>" | php -a ?
Daniel Podrabinek
@grohman
Mar 03 2015 13:19
Interactive mode enabled
Andrew Gurinovich
@altmind
Mar 03 2015 13:19
пардон, вот это php -r "echo fsockopen('ssl://android.googleapis.com', 443);"
Daniel Podrabinek
@grohman
Mar 03 2015 13:20
Resource id #4
Andrew Gurinovich
@altmind
Mar 03 2015 13:20
:\
Daniel Podrabinek
@grohman
Mar 03 2015 13:21
var_dump говорит resource(4) of type (stream)
Роман Сохарев
@greabock
Mar 03 2015 13:25
минутка юмора от Ваганыча
http://coub.com/view/lt6yrp3
Daniel Podrabinek
@grohman
Mar 03 2015 13:25
@altmind есть идеи?
Alexander Popov
@ruelephant
Mar 03 2015 13:27
еу! Вопрос про овец
в коммандах которые в 5.1 называются job. Подрузомевается только 1 handle?
если я захочу скажем несколько комманд сделать в рамках одной сущности аля старт/стоп
это мне два класса плодить?
Alexander Popov
@ruelephant
Mar 03 2015 13:38
ась?
Daniel Podrabinek
@grohman
Mar 03 2015 13:40
@altmind вот этот гист https://gist.github.com/prime31/5675017 на том же сервере отработал без ошибок.
Andrew Gurinovich
@altmind
Mar 03 2015 13:41
@grohman идеи кончились
This message was deleted
Daniel Podrabinek
@grohman
Mar 03 2015 13:43
добавил curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false); - без изменений
@altmind ладно, спасибо и на том.
Dinar Garipov
@garf
Mar 03 2015 13:46
Всем большой привет.
Помогите пожалуйста, кто чем может. Laravel 5. В Schedule хочу воспользоваться моделью, а получаю вот такой эксепшн:
PHP Fatal error:  Call to a member function connection() on a non-object in
slider23
@slider23
Mar 03 2015 13:48
@ruelephant получается, да, два класса
@gaaarfild а на чем ты вызываешь её ?
Dinar Garipov
@garf
Mar 03 2015 13:49
Через консоль
artisan schedule:run
Там Firm::find(216);
slider23
@slider23
Mar 03 2015 13:49
я по тексту ошибки
Dinar Garipov
@garf
Mar 03 2015 13:50
This message was deleted
Я не понял вопроса.
slider23
@slider23
Mar 03 2015 13:53
ну написано - вызывается connection() у не объекта. Я и спросил - а у кого ты его вызываешь ? Ты ответил - это не я, это фреймворк
Dinar Garipov
@garf
Mar 03 2015 13:53
Да.
slider23
@slider23
Mar 03 2015 13:54
ок, далее - что-нить типа use App\Firm есть ?
Dinar Garipov
@garf
Mar 03 2015 13:54
use App\Models\Firm;
slider23
@slider23
Mar 03 2015 13:54
php artisan env что говорит ?
Alexander Popov
@ruelephant
Mar 03 2015 13:55
@slider23 а мне не подскажешь как правильно? если комманда (job) имеет несколько суб. команд то как сделать лучше? LA5
Dinar Garipov
@garf
Mar 03 2015 13:55
опа
Это артизан вообще выдает.
Alexander Popov
@ruelephant
Mar 03 2015 13:55
или в любом случаи придется плодить классы под каждую суб. команду
Dinar Garipov
@garf
Mar 03 2015 13:56
@slider23 Но выдает именно потому, что в Schedule идет обращение к модели.
если закомментить, все опять работает.
@ruelephant Можешь плодить методы =)
Alexander Popov
@ruelephant
Mar 03 2015 13:57
handle
slider23
@slider23
Mar 03 2015 13:57
@ruelephant как я понял, придется плодить, класс команды - это нечто атомарное
Alexander Popov
@ruelephant
Mar 03 2015 13:57
там же только 1 метод допустим
печаль
Dinar Garipov
@garf
Mar 03 2015 13:57
@ruelephant Приватные же можно плодить
Alexander Popov
@ruelephant
Mar 03 2015 13:57
они не спасут
Dinar Garipov
@garf
Mar 03 2015 13:58
@slider23 Current application environment: local
Alexander Popov
@ruelephant
Mar 03 2015 13:58
если надо несколько действий на команду
можно конечно в параметрах поколдовать команды
типо сделать action
но это изврат как то
Denis Isaychenko
@Rhincodon
Mar 03 2015 13:59
@ruelephant https://laracasts.com/discuss/channels/general-discussion/laravel-5-commands-dispatch-command-pipeline посмотри, это не то о чё ты говоришь?
Alexander Popov
@ruelephant
Mar 03 2015 14:00
не совсем
представь есть комманда "режисер" у ней есть суб комманды "Свет" "Камера" "Мотор"
Denis Isaychenko
@Rhincodon
Mar 03 2015 14:01
плодить прийдётся да, но их можно через этот pipe запустить перед командой
Alexander Popov
@ruelephant
Mar 03 2015 14:01
мне придется делать папку режисер и там получается классы РежисерСвет РежисерМотор и пр
у каждого есть при этом свой handle
не очень "кашерно"
причем эти команды они как для консольных вызовов, так и для web rest api
Denis Isaychenko
@Rhincodon
Mar 03 2015 14:05
но ты можешь свет, камеру и мотор сделать не в папке режисёра с этим pipe, а где то в папке подготовка, чтобы можно было свет, камеру и мотор не только с режисёром использовать. :) То есть перед командой режисёра запускать эти однотипные команды. Ну а если они напрямую только с режисёром связаны то да, прийдёться плодить. Ну можно же ещё в handler-е нафигачить этих свет, камера и мотор отдельными методами и в handle их там вызывать, но это как то не правильно. :)
Alexander Popov
@ruelephant
Mar 03 2015 14:06
не, вызов может быть только 1 команды за раз
не будет такого что вызывается "Свет, камера, мотор" в одном екшене контролера
Maxim
@Big-Shark
Mar 03 2015 14:07
@slider23 а что там за фигня с переименованием команд в джобы в ларе?
Alexander Popov
@ruelephant
Mar 03 2015 14:07
@Big-Shark переименовали просто, что бы с консольными не путать
теперь эта папка называется jobs
Denis Isaychenko
@Rhincodon
Mar 03 2015 14:08
когда ты перед командой $dispatcher->pipeThrough(['WhateverCommand', 'UploadFileCommand’)) пишешь, а потом запускаешь команду то эти две перед ней выполнятся.
Alexander Popov
@ruelephant
Mar 03 2015 14:08
steve jobs... :)
@Rhincodon да не надо мне такого
Maxim
@Big-Shark
Mar 03 2015 14:09
@ruelephant мда, лучшем консольные команды в таски переименовали
Роман Сохарев
@greabock
Mar 03 2015 14:10
jobbus
нормальный такой рабочий автобус
Alexander Popov
@ruelephant
Mar 03 2015 14:10
надо изменения пропихнуть, сделать app/steve/jobs папку
:)
Dinar Garipov
@garf
Mar 03 2015 14:10
Что ж мне делать с этой моделью в Schedule? :(
Роман Сохарев
@greabock
Mar 03 2015 14:11
щедуля
Dinar Garipov
@garf
Mar 03 2015 14:11

Все отбой, друзья. За пределами

$schedule->call();

нельзя запускать

Alexander Popov
@ruelephant
Mar 03 2015 14:12
кто запретил? :)
Dinar Garipov
@garf
Mar 03 2015 14:13
Да не то, чтобы запретил )) Просто толку никакого ))
LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

Alexander Popov
@ruelephant
Mar 03 2015 14:13
а то я уже придумал как через отражение можно тип метода с протектет заменить на паблик
дичайший изврат :)
Роман Сохарев
@greabock
Mar 03 2015 14:15
посоны, посоны, а я три скайпа запустил
Alexander Popov
@ruelephant
Mar 03 2015 14:16
и зачем?
Роман Сохарев
@greabock
Mar 03 2015 14:16
в том и смысл
Alexander Popov
@ruelephant
Mar 03 2015 14:17
сам себе теперь звонить сможешь
Роман Сохарев
@greabock
Mar 03 2015 14:17
просто вы какие-то напряженные
=)
Brezhnev Ivan
@vanchelo
Mar 03 2015 14:25
@ruelephant у тебя SelfHandling?
Роман Сохарев
@greabock
Mar 03 2015 14:27
как сказал Крис, с партнером веселее...
Alexander Popov
@ruelephant
Mar 03 2015 14:30
да
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 14:31
а есть какой то короткий материал типо шпоргалка по тому какие соглашения у eloquent по структуре базы?
Maxim
@Big-Shark
Mar 03 2015 14:32
@Ellrion а какие там соглашения, ид это ид, связи это таблица_ид
Роман Сохарев
@greabock
Mar 03 2015 14:32
@Big-Shark модель_ид
Brezhnev Ivan
@vanchelo
Mar 03 2015 14:32
@Big-Shark нифига
UserRole -> user_role
нифига, в смысле что это не всё
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 14:33
вот вот, я и хотел в одном месте
типо "вот делай так и наша магия заработает"
Brezhnev Ivan
@vanchelo
Mar 03 2015 14:33
class UserRole extends Eloquent {}

echo (new UserRole)->getTable(); // user_roles
Maxim
@Big-Shark
Mar 03 2015 14:33
@Ellrion эти правилы одинаковы для всех фреймверков вроде сейчас)
Роман Сохарев
@greabock
Mar 03 2015 14:33
@Ellrion вот
там где о строгой нотации
Maxim
@Big-Shark
Mar 03 2015 14:35
@greabock не помню чтоб у меня имя таблицы отличалось от имени модели, поэтому для меня таблица ид = модел ид )
Роман Сохарев
@greabock
Mar 03 2015 14:35
@Big-Shark дело в числе
множественное или единственное
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 14:36
@greabock вроде неплохо. спс тебе
Maxim
@Big-Shark
Mar 03 2015 14:36
@greabock хм, да, тогда мой косяк)
Alexander Popov
@ruelephant
Mar 03 2015 14:37
я вот подумал
а в чем приемущества команды над классом?
просто взять класс сделать internalCalls и звать его
сделать ему биндинг, что бы DI заработал
м?
Maxim
@Big-Shark
Mar 03 2015 14:40
@ruelephant в том что в первом случае это модный патер, а во втором нет)
Alexander Popov
@ruelephant
Mar 03 2015 14:40
модный паттерт который плодит сущности на равном месте
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 14:40
так же в еще парочке мелочей и соглашений что бы тебе не пришлось переизобретать велосипед
Alexander Popov
@ruelephant
Mar 03 2015 14:41
представляешь у меня есть "машина", у ней есть команды "Поехать" и "Остановится" так вот это два "модных" класса
а так бы я забодяжил все в рамках одного класса
@Ellrion например?
Maxim
@Big-Shark
Mar 03 2015 14:42
@ruelephant так забодяж, тебе же не мешают)
Alexander Popov
@ruelephant
Mar 03 2015 14:42
сначало я хочу понять
почему такое решение имеет место быть
а не плодить велосипеды
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 14:43
например, отложенное выполнение - выполнение в фоне (ShouldBeQueued), конвейр команд ну и так же то что тебе не надо делать биндинг
хз что там еще это так с ходу
Alexander Popov
@ruelephant
Mar 03 2015 14:46
хм
только отложенное выполнение может вытянуть
ну и что это не велосипед
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 14:46
а Pipeline чего тебе не приглянулся?)
Maxim
@Big-Shark
Mar 03 2015 14:47
@Ellrion такие фишки как отложенное выполнение описаны в патерне, это уже вольности ларавеля)
Alexander Popov
@ruelephant
Mar 03 2015 14:47
@Ellrion пока не вижу смысла
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 14:49
@ruelephant а в посредниках (middleware) ты смысл видишь?
Alexander Popov
@ruelephant
Mar 03 2015 14:50
это да
например авторизация
у меня там смысл то только что бы код можно было в двух местах использовать
в контролере и в консольной команде
при этом сами по себе они кода не содержат, просто вызывают job
но таких кусков дофига выходит
фактически все методы из контролера каждый-в-свой-класс уехали
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 14:52
ну так это же и круто
Alexander Popov
@ruelephant
Mar 03 2015 14:53
компактнее бы как то
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 14:53
наоборот это путь к слабосвязности, что для больших систем очень важно
Alexander Popov
@ruelephant
Mar 03 2015 14:57
ррр
мне кажется это путь к самоубийству
учитывая сколько там методов
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 14:58
может ты просто не так что то готовишь?)
Alexander Popov
@ruelephant
Mar 03 2015 14:58
я объяснил как готовлю
slider23
@slider23
Mar 03 2015 14:58
Джава как-то живет же с миллиардом классов. И мы проживём.
Alexander Popov
@ruelephant
Mar 03 2015 14:58
каждая команда это обертка над GuzzleHttp клиентом
который ходит на некий api
ПЛЮЗЗЗ работа с бд
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 15:02
мне кажется ты неверно понимаешь само назначение job. И в твоем случае делать надо не через него. К сожалению я не видя всей картины могу ошибаться. Но если ты видишь, что происходит фигня значет тебе этот паттерн не нужен
Alexander Popov
@ruelephant
Mar 03 2015 15:02
job нужен для инкапсуляции кода в рамках приложения
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 15:03
не любого же кода
Alexander Popov
@ruelephant
Mar 03 2015 15:03
ну который используется больше 1 раза соотвественно :)
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 15:03
опять же не любого
Alexander Popov
@ruelephant
Mar 03 2015 15:03
я как понимаю любого
классика жанра контролер+консольный вызов
создаем job и радуемся жизни
Maksim (Ellrion) Platonov
@Ellrion
Mar 03 2015 15:05
есть еще куча патернов и мест куда рассасывается код. Презенторы, Сервисы, Модели, Репозитории, композеры, обсерверы с событиями, валидаторы.... да блин дофига же всего
командная шина только один из вариантов того куда можно положить какой то код. Всему свое место и каждуму патерну своя область применения в приложении
slider23
@slider23
Mar 03 2015 15:06
Я так понимаю, проблема в основном эстетическая ? Три класса вместо одного ?
Alexander Popov
@ruelephant
Mar 03 2015 15:07
ага
slider23
@slider23
Mar 03 2015 15:07
Можно же разложить по папкам, будет покрасивее
Alexander Popov
@ruelephant
Mar 03 2015 15:08
ну это я уже подумал
Orel
@2byte
Mar 03 2015 15:31

@ruelephant

class MyController extends BaseController {
    function __construct()
    {
         $this->beforeFilter(function () { });
    }
}

Вызываем App::make('MyController')->getIndex() не будет работать

Daniil V. Savenkoff
@savenkoffcom
Mar 03 2015 15:32
Привет всем.
Ребят, проконсультируйте плиз. Не могу сделать валидацию по примеру: http://laravel.su/docs/5.0/validation#controller-validation
пишет ошибку: ReflectionException in RouteDependencyResolverTrait.php line 53: Class App\Http\Controllers\Auth\Request does not exist
JhaoDa
@jhaoda
Mar 03 2015 15:32
@savenkoffcom и что именно ты не понял в «Class App\Http\Controllers\Auth\Request does not exist»?
Alexander Popov
@ruelephant
Mar 03 2015 15:34
@2byte эм?
JhaoDa
@jhaoda
Mar 03 2015 15:34
Я не понимаю, сколько раз народ будет биться лбом в неймспейсы? Это что, так сложно — почитать документацию по ЯЗЫКУ, даже не по ларавель?
Daniil V. Savenkoff
@savenkoffcom
Mar 03 2015 15:39

@jhaoda ну собственно что класса нет, если добавляю

use Illuminate\Http\Request;

но возникает вопрос.... как бы это написать, как вернуть ошибку пользователю... иначе ссылка перенаправление делает на саму себя... и зацикливается...

Константин Брызгалин
@constb
Mar 03 2015 15:40
@savenkoffcom ты к фасаду что ли обращаешься? тогда \Request
JhaoDa
@jhaoda
Mar 03 2015 15:41
This message was deleted
This message was deleted
Гоню, там же еще просто валидация без FormRequest есть
@savenkoffcom ты свой контроллер от чего унаследовал?
Daniil V. Savenkoff
@savenkoffcom
Mar 03 2015 15:43
@jhaoda
class AuthController extends Controller
@constb а как правильно? Если \Request, то Argument 1 passed to App\Http\Controllers\Controller::validate() must be an instance of Illuminate\Http\Request, instance of Illuminate\Support\Facades\Request given, called in /app/Http/Controllers/Auth/AuthController.php on line 83 and defined
JhaoDa
@jhaoda
Mar 03 2015 15:46
Правильно — use Illuminate\Http\Request;
Orel
@2byte
Mar 03 2015 15:46
@ruelephant ну я уходил, вот дополнение )
JhaoDa
@jhaoda
Mar 03 2015 15:47
@savenkoffcom да, стандартно, если валидация провалилась, то клиента возвращает на предыдущую страницу. И не понятно, почему у тебя зацикливание
Или это ты думаешь, что зацикливание, а на самом деле всё как надо
Во вьюхе надо выводить содержимое переменной $errors, которая автоматом прокидывается, если есть ошибки
Daniil V. Savenkoff
@savenkoffcom
Mar 03 2015 15:51
@jhaoda видимо да, оно должно клиента возвращать на предыдущую страницу, и с формРеквест это правильно, и это работает. А вот у меня ссылка из вне на сайт (письмо с активацией почты), и возвращать назад просто некуда...
JhaoDa
@jhaoda
Mar 03 2015 15:52
@savenkoffcom ну значит переопредели в контроллере метод getRedirectUrl(), что бы он возвращал нужное перенаправление
Daniil V. Savenkoff
@savenkoffcom
Mar 03 2015 15:55
@jhaoda то, что нужно. Спасибо.
VimLoko
@VimLoko
Mar 03 2015 16:49
Всем привет) Подскажите пожалуйста, на странице имеются 2 формы и в каждой форме генерируется токен. Он одинаковый у каждой формы должен быть или разный?)
Daniil V. Savenkoff
@savenkoffcom
Mar 03 2015 16:51
@VimLoko по идее одинаковый. Так как это сессионная переменная...
JhaoDa
@jhaoda
Mar 03 2015 16:52
Он один для пользователя
VimLoko
@VimLoko
Mar 03 2015 16:52
@savenkoffcom @jhaoda Спасибо)
Denis Isaychenko
@Rhincodon
Mar 03 2015 17:42
немного о DDD https://gist.github.com/Rhincodon/14f091a73a101c5091c5 , перевод вопроса-ответа https://laracasts.com/discuss/channels/general-discussion/ddd-questions . Может кому интересно. :)
slider23
@slider23
Mar 03 2015 17:43
Круто, спасибо :)
Brezhnev Ivan
@vanchelo
Mar 03 2015 17:56
@Rhincodon я тоже недавно заморочился этой темой
и DDD оказался не тем что я думал ранее)
Вертекс
@wertex
Mar 03 2015 19:29
подскажите, если использовать доменную авторизацию, то что будет храниться в моей бд ?
Brezhnev Ivan
@vanchelo
Mar 03 2015 19:30
http?
Вертекс
@wertex
Mar 03 2015 19:30
логин и хеш пароля из AD ?
сори, не понял вопроса
JhaoDa
@jhaoda
Mar 03 2015 19:54
@wertex мы не поняли твоего вопроса
Andrey
@Quiss
Mar 03 2015 19:54
я понял
он хочет сделать крос домменную авторизацию) и спрашивает что хранить
PS для тех кто не понял как на mail.ru :) (PS2 возможно не прав я)
Alexey
@Butochnikov
Mar 03 2015 19:57
@/all кто со stapler работал? есть возможность файлы писать по ftp/sftp, а не только локально или на s3?
Вертекс
@wertex
Mar 03 2015 19:59
я делаю сервис для своей конторы. у нас домен... хочется упростить коллегам работу. чтобы сервис пускал в сервис по доменному паролю. аля шерпоинт
JhaoDa
@jhaoda
Mar 03 2015 20:02
@Quiss да, ты не прав :)
SliderVM
@SliderVM
Mar 03 2015 20:03
Добрый вечер!
JhaoDa
@jhaoda
Mar 03 2015 20:05
@wertex а через что ты её, доменную авторизацию, делаешь?
SliderVM
@SliderVM
Mar 03 2015 20:07
Я явно туплю, но что то меня заклинило.
есть Route::get('auth/sauth', 'Auth\AuthController@SAuth');
Все нормально отрабатывает. А если URL с параметрами типа {домен}/auth/sauth?a1={значение} как мне эти значения получить. Только начал изучать фреймворк, сильно не пинайте
JhaoDa
@jhaoda
Mar 03 2015 20:08
@SliderVM а ты документацию читать пробовал?
SliderVM
@SliderVM
Mar 03 2015 20:10
@jhaoda прочитал. Но меня переклинило. Сообразить не могу, что делать
JhaoDa
@jhaoda
Mar 03 2015 20:11
Окай, еще одна подсказка — http://laravel.su/docs/5.0/requests#retrieving-input
SliderVM
@SliderVM
Mar 03 2015 20:13
@jhaoda т.е. просто пишу $a = Request::input('a');
JhaoDa
@jhaoda
Mar 03 2015 20:13
@SliderVM ну ты попробуй, хотя бы
SliderVM
@SliderVM
Mar 03 2015 20:15
@jhaoda Ок, спасибо. Пошел пробовать
LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

JhaoDa
@jhaoda
Mar 03 2015 20:39
Спамер пришел, штоле
Вертекс
@wertex
Mar 03 2015 20:42
@jhaoda пока не получаю... на тестовом сервере нет домена ( думал поискать на github что то
JhaoDa
@jhaoda
Mar 03 2015 20:44
@wertex я не вовсем понимаю, что ты хочешь. Пускать в свой сервис всех, кто уже авторизован в домене без ввода логина-пароля или проверять логин-пароль на валидность через AD?
Вертекс
@wertex
Mar 03 2015 20:44
покачто у меня ошибка Error Code: 1267. Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation '=' :) хотя обе таблицы вроде в одинаковом сравнении
@jhaoda пускать кто авторизован, те зашел на комп. открыл браузер и попал в сервис
JhaoDa
@jhaoda
Mar 03 2015 20:46
Ну тогда о каких логинах-паролях в базе идет речь? Как я понял, это всё реализуется через модули к веб-серверу и он уже решает, пропустить запрос или нет
Возможно, что в массиве $_SERVER при этом будет доменное имя юзера
Вертекс
@wertex
Mar 03 2015 20:48
@jhaoda мне же надо знать кого пускать... например я не хочу всех пускать, а тех кого пустил еще и ролями наградить
JhaoDa
@jhaoda
Mar 03 2015 20:49
@wertex ну вот если получится узнать доменное имя юзера, то вот тебе и логин
Вертекс
@wertex
Mar 03 2015 20:50
@jhaoda пусть я узнаю логин, тогда мне надо сравнить с данными моего сервиса и или пустить его или нет )
JhaoDa
@jhaoda
Mar 03 2015 20:51
@wertex откуда они у твоего сервиса возьмутся?
Это надо из AD всех к себе выгружать сначала
Вертекс
@wertex
Mar 03 2015 20:52
@jhaoda ну вот похоже что да...
JhaoDa
@jhaoda
Mar 03 2015 20:53
@wertex ну в общем, ты для начала определись, каким модулем аутентификацию делать. Посмотри, что от этого модуля можно узнать про пользователя
Может он и группы юзера покажет, тогда всё можно решить средствами AD, добавив нужных юзеров в группу «Доступ к моему супер-пупер-сервису»
Вертекс
@wertex
Mar 03 2015 21:00
@jhaoda ага
JhaoDa
@jhaoda
Mar 03 2015 21:00
Их же там, модулей, как говна за баней: ntlm, ldap, kerberos, sspi
LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

Orel
@2byte
Mar 03 2015 21:40
Ночные эльфы
Andrey
@Quiss
Mar 03 2015 21:42
они не ночные эльфы)
прост я ссылку кинул
Alexey
@Butochnikov
Mar 03 2015 21:56
@Quiss привет. где пропадал?
как поживает https://github.com/LaravelRUS/Walfire ?
Andrey
@Quiss
Mar 03 2015 21:59
@Butochnikov http://marta.kg
перекочевал на октябрь
пока делаю )
то что там сейчас прост сразу вывожу в продакшн для тёти
Пропадал на Украине)
Привет xD
Alexey
@Butochnikov
Mar 03 2015 22:01
тогда с возвращением )
Andrey
@Quiss
Mar 03 2015 22:02
там фильтр хорошо работает )
кстати )
@Butochnikov Не хочешь на Украину к @vanchelo на выходные матнуться?)
Alexey
@Butochnikov
Mar 03 2015 22:08
как-нибудь в другой раз. мне тут нужно быть.
Andrey
@Quiss
Mar 03 2015 22:09
Печаль :(
Роман Сохарев
@greabock
Mar 03 2015 22:14
Говорят загранпаспорт теперь надо :frowning:
Andrey
@Quiss
Mar 03 2015 22:16
мне плевать
1) я гр. Киргизии
2) у меня есть он)
3) я когда в Октябре выезжал туда он тоже нужен был
Роман Сохарев
@greabock
Mar 03 2015 22:17
ну зачем же так экспрессивно
сказал бы "все равно" )
Andrey
@Quiss
Mar 03 2015 22:17
:) просто это новвоведение только для гр. РФ
Роман Сохарев
@greabock
Mar 03 2015 22:19
как по мне, так это клоунада
Andrey
@Quiss
Mar 03 2015 22:19
Как по мне, это норма
Все что за пределами РФ - заграница
для меня)
поэтому все логично
Роман Сохарев
@greabock
Mar 03 2015 22:20
ох уж это "все логично"
в этом чате это уже стало как "ой все"
Andrey
@Quiss
Mar 03 2015 22:20
Главное что-бы не как платье)
Роман Сохарев
@greabock
Mar 03 2015 22:21
хех, а на килограммовой марте то цвета откровенно ларовские =)
JhaoDa
@jhaoda
Mar 03 2015 22:22
@greabock у тя идиосинкразия на это словосочетание, да?
Роман Сохарев
@greabock
Mar 03 2015 22:23
@jhaoda нет, я не пойду гуглить это слово, не сейчас
Andrey
@Quiss
Mar 03 2015 22:23
))
ничего не изменилось
тут так-же весело xD
JhaoDa
@jhaoda
Mar 03 2015 22:40
В очередной раз в стал вопрос RBAC. Посмотрел опять Entrust, посмотрел Lock... какая-то жесть
Куда, блиё, столько классов, посоны?
Мож кто-нить знает что-то более удобное?
@greabock слушай, тебя надо забанить за эту тупую рожу в зелёном :)
Глаза мозолит
Andrey
@Quiss
Mar 03 2015 22:44
))
хочешь покажу
волшебную кнопочку?
JhaoDa
@jhaoda
Mar 03 2015 22:44
@Quiss ну-ка
Andrey
@Quiss
Mar 03 2015 22:44
ПКМ - Просмотр кода элемента
ты все равно страницу не обновляешь
грохни имагу
JhaoDa
@jhaoda
Mar 03 2015 22:44
@Quiss костыль же
Andrey
@Quiss
Mar 03 2015 22:45
ну тогда расширение для хрома напиши
Роман Сохарев
@greabock
Mar 03 2015 22:45
@jhaoda там есть кнопка свернуть
Andrey
@Quiss
Mar 03 2015 22:45
xD
@greabock не нету
JhaoDa
@jhaoda
Mar 03 2015 22:45
@Quiss и представь себе — не все сидят на б-гомерзком хроме, у меня вот нету ПКМ - Просмотр кода элемента
@greabock да, нету кнопки
Хотя есть фаербаг, конечно...
Andrey
@Quiss
Mar 03 2015 22:46
бэээ ФаерФокс
JhaoDa
@jhaoda
Mar 03 2015 22:46
Гуру, ну про RBAC кто чо скажет? Чо юзаете? Сами писали?
Роман Сохарев
@greabock
Mar 03 2015 22:46
а у меня есть... но она не работает
Andrey
@Quiss
Mar 03 2015 22:46
вот ток у тебя и есть
я когда видео выклаыдвал
тож кнопка была
JhaoDa
@jhaoda
Mar 03 2015 22:47
@greabock вот ты гааааад
Роман Сохарев
@greabock
Mar 03 2015 22:47
XD
JhaoDa
@jhaoda
Mar 03 2015 22:47
@Butochnikov нету
Alexey
@Butochnikov
Mar 03 2015 22:47
поломал? )
Andrey
@Quiss
Mar 03 2015 22:48
не нету
инфа 100%
Alexey
@Butochnikov
Mar 03 2015 22:48
куда вы ее дели?
Andrey
@Quiss
Mar 03 2015 22:48
@Butochnikov по секрету скажу, можно не заходить на страницу Joxi и не выдирать пруф на картинку
JhaoDa
@jhaoda
Mar 03 2015 22:48
Я, в общем-то, тоже написал на базе Authority решение, но может есть более труЪ-пакет от Отцов?
Роман Сохарев
@greabock
Mar 03 2015 22:48
@Butochnikov я страницу обновил и тоже пропала
Andrey
@Quiss
Mar 03 2015 22:49
@Butochnikov просто надо к концу полученного урла дописать .jpg и все будет хоршо (ps баг жокси)
Alexey
@Butochnikov
Mar 03 2015 22:49
@greabock я знаю, но не люблю рекламу )
Andrey
@Quiss
Mar 03 2015 22:49
@Butochnikov попробуй сам)
так в разы быстрее просто) чем выдирать в ручную урл
Alexey
@Butochnikov
Mar 03 2015 22:50
так тоже самое получается
Andrey
@Quiss
Mar 03 2015 22:50
Вставить нажать ПКМ скопировать
Alexey
@Butochnikov
Mar 03 2015 22:50
только .jpg писать надо, а тут 2 клика
Andrey
@Quiss
Mar 03 2015 22:50
а так сразу вставить в чат и дописать .jpg
ну хз))) мне так удобнее)
JhaoDa
@jhaoda
Mar 03 2015 22:53
Окай, я спрошу с другой стороны. Хранить роли и относящиеся к ним разрешение в базе — это труЪ-подход? А в конфигах не труЪ?
То я смотрю, все в базу лепят
Хотя там тупо списки, которые меняются раз в год руками или через миграции
Роман Сохарев
@greabock
Mar 03 2015 22:54
зависит лишь от того известны ли все роли заранее
JhaoDa
@jhaoda
Mar 03 2015 22:55
Не понял. А разницы?
Роман Сохарев
@greabock
Mar 03 2015 22:55
о боги
JhaoDa
@jhaoda
Mar 03 2015 22:56
Появилась через год новая роль, её что в массив записать, что в базу — какая разница?
Роман Сохарев
@greabock
Mar 03 2015 22:56
мужик, ты хоть раз вордпресс или джумлу открывал?
JhaoDa
@jhaoda
Mar 03 2015 22:57
@greabock ага, один или два раза. Чо сказать-то хотел?
Роман Сохарев
@greabock
Mar 03 2015 22:57
а ну тогда да
просто это от туда мода пошла
ну и не только от туда
JhaoDa
@jhaoda
Mar 03 2015 22:57
Или ты у элефантуса перенял привычку?
Роман Сохарев
@greabock
Mar 03 2015 22:58
ролями и правами из админки можно управлять.
JhaoDa
@jhaoda
Mar 03 2015 22:59
Ну так я и говорю — мне этого не надо, из админки управлять
Когда было надо, то я не жужжал и хранил в базе, без вопросов
В вордпрессе там вообще конфиг с ролями в базе, по сути, ни разу не пример
Роман Сохарев
@greabock
Mar 03 2015 23:00
в таких случаях я говорю: "женщина, мне пофиг какое на тебе белье, если ты не хочешь заниматься сексом при свете!"
хотя нет, я никогда так не говорю... но не суть
метафора, я думаю, понятна )
JhaoDa
@jhaoda
Mar 03 2015 23:02
Понятна-то понятна, но...
Перфекционизм не дает покоя
Роман Сохарев
@greabock
Mar 03 2015 23:05
ну я даже хз
JhaoDa
@jhaoda
Mar 03 2015 23:07
@greabock ну вот ты юзал RBAC?
Роман Сохарев
@greabock
Mar 03 2015 23:08
я пришел к тому, что у меня урезанный вариант rbac
LaravelButler

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

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

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

Роман Сохарев
@greabock
Mar 03 2015 23:08
и меня он устраивает
в рамках того, что я делаю, конечно же

просто есть роли мэни-ту-мэни, в модели юзера написано $with = ['roles'] (удобно просто, чтобы он всегда с ролями загружался).
и там же есть просто метод hasRole()

соответственно, когда нужно проверить есть ли доступ просто проверяю юзера на hasRole()

еще посредник написан
который есть суть обертка над этим hasRole
Роман Сохарев
@greabock
Mar 03 2015 23:14
в роутах допустим так и пишу 'middleware' => 'auth|hasRole:admin'
по-любому найдется куча критики на такой подход. Но меня устраивает, и мне пофиг )
JhaoDa
@jhaoda
Mar 03 2015 23:17
@greabock и чо, умная ларавель как-то передаёт в посредника admin как параметр?
Роман Сохарев
@greabock
Mar 03 2015 23:18
какбы да )
JhaoDa
@jhaoda
Mar 03 2015 23:18
@greabock это ты как так? Покажи?
Роман Сохарев
@greabock
Mar 03 2015 23:19
ща, за комп сяду
я за ноутом просто
JhaoDa
@jhaoda
Mar 03 2015 23:28
С другой стороны, через год потребуется сделать юзеру две роли... и всё, одним полем не обойдешься
Роман Сохарев
@greabock
Mar 03 2015 23:28
ыыыы
в пятерке не работает
а в четверке работает
хм...
JhaoDa
@jhaoda
Mar 03 2015 23:28
Ну все равно покажи
Роман Сохарев
@greabock
Mar 03 2015 23:32
Route::filter('role', function($route, $request, $value)
{
          if( ! Auth::user()->hasRole($value)  ) return redirect('/');
});
JhaoDa
@jhaoda
Mar 03 2015 23:33
И типа $vlaue будет admin?
Я-то думал, какой-нить грязный хак, а это функционал родной:(
Роман Сохарев
@greabock
Mar 03 2015 23:36
ага
мдя... а как же теперь быть....
Роман Сохарев
@greabock
Mar 03 2015 23:49
#...
['middleware' => 'has_role', 'roles' => ['admin', 'moderator'], 'uses' => 'SomeController@index'  ]
#...
public function handle($request, Closure $next) 
{
        $action = $request->route()->getAction();

        if( ! $this->auth->user->hasRole($action['roles']) ) return redirect('/');

}
Maxim
@Big-Shark
Mar 03 2015 23:49
так удобней)
http://www.newsvl.ru/vlad/2015/03/04/132451/ а как дела у вас?
Роман Сохарев
@greabock
Mar 03 2015 23:50
А у меня +10 было
на солнце правда, но все равно приятно )
Maxim
@Big-Shark
Mar 03 2015 23:51
@greabock вот мы и выяснили кого я теперь буду недолюбливать в этом чате)
Роман Сохарев
@greabock
Mar 03 2015 23:51
О_о за что
Maxim
@Big-Shark
Mar 03 2015 23:52
@greabock за то что у вас тепло, а у нас метель на 2 дня
greabock @greabock посыпает голову пеплом
JhaoDa
@jhaoda
Mar 03 2015 23:55
У нас снежок хоть малость говно укрыл
Maxim
@Big-Shark
Mar 03 2015 23:56
@greabock слушай, есть проект в котором есть основная сущность кино (На самом деле не кино, но так понятней) и куча инфы про нее, картинки, отзывы, цены, актеры, и тд, все это почти всегда выводится вместе, и по этим параметрам практически нет поиска, как бы ты сделал базу под это дело, обычный мускол со связями?
JhaoDa
@jhaoda
Mar 03 2015 23:56
А то ваще местами земля голая была
Роман Сохарев
@greabock
Mar 03 2015 23:58
@Big-Shark "практически нет" или "вообще нет" ? это пожалуй важно ))
Maxim
@Big-Shark
Mar 03 2015 23:58
@greabock все кроме отзывов запрашивается всегда
@greabock поиск есть, но сейчас он реализован через пхп, так как там все сложно, так что давай будем говорить что его вообще нет
Роман Сохарев
@greabock
Mar 03 2015 23:59
тогда в джейсоне прям в поле хранить и не париться )