These are chat archives for LaravelRUS/chat

25th
Jul 2014
Maxim
@Big-Shark
Jul 25 2014 01:22
$price->setIsRecurring(!!$values['is_recurring']);
кто подскажет зачем такое извращение? почему не сделать (bool)
goodaeu
@goodaeu
Jul 25 2014 01:41
народ, тут кто нибудь PhpStorm пользуется?
Alexander Egorov
@Amegatron
Jul 25 2014 02:17
Да тут многие на шторме сидят, и я в том числе
slider23
@slider23
Jul 25 2014 05:16
Практически полностью Eloquent-совместимые Монго-модели: https://github.com/jenssegers/laravel-mongodb
PEKTOP @PEKTOP Доброе утро! (UTC+4)
Maxim
@Big-Shark
Jul 25 2014 05:43
@PEKTOP и тебе (UTC+10 16:43)
Aleksandr
@MrRino
Jul 25 2014 06:15
@SCIF domen стоит в null. так как если я меняю его на свой, то в папке sessions начинает валится куча сессий непонятно от куда. Делаю запрос на авторизацию, и сразу 3 файла прилетело. с null один, то мой. так как flash() записывает в него мои действия. Но! авторизация так и не работает... check() не хочет его пропускать вообще
code
// из class Guard
public function check()
{
return ! is_null($this->user());
}
от сюда понятно, что у меня сразу после авторизации $this->user() - NULL
Но почему, понять не могу....
Alexander Zhuravlev
@SCIF
Jul 25 2014 06:17
@MrRino , я бы воткнул домен в виде .domain.tld хотя бы для тестов.
Maxim
@Big-Shark
Jul 25 2014 06:20
https://github.com/jenssegers/laravel-date кто русский добавит?
Alexander Zhuravlev
@SCIF
Jul 25 2014 06:26
@Big-Shark , задача сложная :)
Maxim
@Big-Shark
Jul 25 2014 06:26
Что сложного?
Alexander Zhuravlev
@SCIF
Jul 25 2014 06:26
Там смайлик
goodaeu
@goodaeu
Jul 25 2014 06:27
подскажите где в настройках шторма убрать что при удаление файлы он удаляет папку, например есть app/folderName/a.php, при удаление a.php, шторм удаляет и folderName
Aleksandr
@MrRino
Jul 25 2014 06:28
@SCIF не помогло :worried:
Alina Soboleva
@AlinaSob
Jul 25 2014 07:05
Скажите, кто на шторме сидит (можно шепотом) - у вас лицензия? ;)
Или вы исключительно для обучения )
Aleksandr
@MrRino
Jul 25 2014 07:07
@AlinaSob да ты что. тут такие вещи спрашивать :smile:
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 07:07
@AlinaSob у меня лицензия
это настолько крутой продукт что заплатить за него не проблемма "Джентельмены, кто нибудь может обвинить меня в том, что я не плачу за свой виски?"(с)
Aleksandr
@MrRino
Jul 25 2014 07:09
@Ellrion лицензия от EMBRACE ? :)
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 07:11
@MrRino эм... хз что это) обычная персональная лицензия
у меня вообще весь софт или лицензия или фри. пытаюсь и на контент перейти только лицензионный, но с этим пока туго)
@MrRino кстати видел там выше вопросы о авторизации и что в базу запрос летит только с юзернеймом. А вот не увидел вы разобрались что и как? А то я ответ знаю)
Aleksandr
@MrRino
Jul 25 2014 07:15
@Ellrion ну у меня на работе тоже все лицензионное, иначе накажут)
а вот на домашнем ПК иногда грешу 0:)
@Ellrion с запросом разобрался вроде, у меня поле в пароля в таблице было слишком коротко) потому хеш урезал, и не авторизовал. У меня теперь проблема в том, что Auth::check() меня не признает сразу после авторизации. Auth::user() - NULL сразу после редиректа.
А ответ какой?) может проблема все же в этом)
я 2 дня уже не двигаюсь с места из за авторизации этой :fire:
Alexander Egorov
@Amegatron
Jul 25 2014 07:20
У меня тоже лицензия шторма, хотя пока юзаю 8 EAP
из нелицензий только разве что Vegas 12 :) он зараза 19к рублей стоит х_Х а в остальном вроде все лицензионное :)
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 07:21
ну при Auth::attempt там идет такая штука, что он 'password' игнорирует, делает запрос в базу на основании остальных данных и уже потом если пользователь нашелся он делает хитрое сравнение беря пароль этого объекта пользователя методами которые в UserInterface, там же ещё используется Hash
это к вопросу почему в запросе нет пароля
глюки могут возникнуть какраз на уровне либо взятия пароля у найденного пользователя, тоесть посмотри правильно ли реализован у тебя UserInterface а конкретно getAuthPassword
либо потом на уровне сравнения. ведь из базы getAuthPassword выдает хешированный пароль а в Auth::attempt ты 'password' кидать должен сырой, а потом там идет сравнение
Aleksandr
@MrRino
Jul 25 2014 07:24
это я знаю, я пароль сырой кидаю
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 07:25
и вот если неверно настроен Hasher или как в моем случае было это была старая таблица (я живой старый проект переводил на лару) и там пароли хешированы как то не так то тут бывает косяк.
а вообще у тебя сам Auth::attempt true сейчас возвращает?
и не работает только Auth::check()?
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 07:31
просто всё то я описал как возможные причины почему вообще может неработать Auth::attempt, ну и объяснение по поводу запроса пользователя при авторизации. а check связан больше с настройками сессии, и кук
Aleksandr
@MrRino
Jul 25 2014 07:34
сейчас авторизация уже работает, на странице авторизации юзаю var_dump(Auth:user()->user_name) выводит MrRino, собственно, что в базе. А вот когда делаю редирект, то авторизация сразу отваливается, и соответственно Auth::check() меня не признает.
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 07:36
config/session.php надо проверить
Aleksandr
@MrRino
Jul 25 2014 07:37
Я уж все настройки сессии и кук пересмотрел, ну ничего там подозрительного. куки в браузере есть, resourses через инструмент разработчика в yandex br показывает одну и туже. а вот сессия постоянно меняется. использовал driver и file и database, все равно(
Aleksandr
@MrRino
Jul 25 2014 07:42
"кэш кэша в кэш, который находится в кэше, что лучше быть в кэше" :smile:
Orel
@2byte
Jul 25 2014 07:42
:smile:
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 07:44
@MrRino а ты пробовал что то просто в сессию положить по одному роуту, а по другому это вынуть и вывести? Попробуй
Aleksandr
@MrRino
Jul 25 2014 07:47
@Ellrion пробовал, у меня если данные не введены, то Session::flash('типа данных нет') и редиректом на форму где и вывожу. так все работает
slider23
@slider23
Jul 25 2014 07:56
У меня phpstorm лицензионный еще с 4й версии, несколько раз продлял её уже. Вот уж на что не жалко денег, так это на него.
Alina Soboleva
@AlinaSob
Jul 25 2014 07:57
@slider23 А я как-то давно пробовала, он тогда меня не впечатлил. что там хорошего есть, чем ты реально пользуешься?
slider23
@slider23
Jul 25 2014 07:59
я раньше сидел на netbeans. там была большая проблема - отладка xdebug тормозила, просто адски. Когда я увидел, как оно летает в шторме - сразу перешел.
потом куча мелких фишечек пленила и я к ним привык
Alina Soboleva
@AlinaSob
Jul 25 2014 08:00
вот я тогда и netBeans попробовала, и шторм
уже не помню, что мне не понравилось ) надо сделать еще попытку, что ли
slider23
@slider23
Jul 25 2014 08:01
Файлы очень удобно открывать по Ctrl-Shift-N - мышкой по левой зоне в подпапкой не елозишь
типа даблклик на имени вьюхи - Ctrl-Shift-N - enter
или руками можно имя писать, можно звездочкой, типа *routes
Есть глобальный поиск - папки, файлы, классы (!) - Shift-shift
slider23
@slider23
Jul 25 2014 08:07
Когда конструктор класса пишешь и перечисляешь аргументы, он автоматом пишет use .. перед классом .
и потом, когда написал 10 аргументов, нажимаешь alt-enter, из менюшки выбираешь нужный пункт и он тебе генерит приватные поля в классе и инициализацию их в конструкторе из аргументов.
Для ларавеловских контроллеров с dependency injection незаменимо
Alina Soboleva
@AlinaSob
Jul 25 2014 08:08
хм, да, звучит интересно, надо попробовать )
спасибо )
slider23
@slider23
Jul 25 2014 08:09
еще там темная тема есть, мне она не нравится, я люблю светлые, но народ кричит "ня"
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 08:10
у меня от темной меньше глаза устают
хз почему
Alina Soboleva
@AlinaSob
Jul 25 2014 08:11
я не могу с темными работать, у меня наоборот от них глаза болят
slider23
@slider23
Jul 25 2014 08:12
еще они когда разрабатывают новую версию, её беты выкладывают в свободный доступ, можно юзать бесплатно. Сейчас как раз такой период - http://confluence.jetbrains.com/display/PhpStorm/PhpStorm+Early+Access+Program
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 08:13
ну тут еще сравнивать надо правильно, как только тему меняешь тебе в любом случае не комфортно. Нужно этот период пропустить. А вот потом уже сравнивать после периода привыкания
Aleksandr
@MrRino
Jul 25 2014 08:13
@Ellrion там темы и для любителей темных есть)
slider23
@slider23
Jul 25 2014 08:14
еще там есть мегафишка в виде того, что табы с файлами и папки можно расцвечивать разными цветами. Типа контроллеры зеленые, модели-репозитории-итп коричневые, вьюхи синие. Вот это меня еще пленило в 4й версии.
вот блог по новостям шторма http://blog.jetbrains.com/phpstorm/
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 08:18
там скорее взаимный пиар)
потому как то видео посвящено работе в шторме
slider23
@slider23
Jul 25 2014 08:19
да, но джеффри сделал все видео по шторму фришными
вроде когда они начинались, они фришными не были
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 08:21
он вообще кажется не в шторме поначалу работал, и это не его любимая среда, так что это скорее ларакаст пиарит шторм и скорее всего по заказу
да и мне не очень нравится то как он настраивает Ide в видео, но тут на вкус и цвет
slider23
@slider23
Jul 25 2014 08:22
он работал сначала в виме, но потом народ его склонил к шторму
задолго до этого курса
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 08:24
ок. на самом деле как бы у них дела не обстояли я невижу ничего плохого, кто бы из них кого не пиарил и по каким соглашениям и без. Что джетбрейнс офигенны, что ларакаст
Alexander Egorov
@Amegatron
Jul 25 2014 08:27
вот куча тем для шторма от Dayle Rees:
http://daylerees.github.io/
Orel
@2byte
Jul 25 2014 08:29
Гитхаб норм тема
@Amegatron и такой шрифт убогий у всех тем
slider23
@slider23
Jul 25 2014 08:29
шрифт меняется
там только цвета показаны
Orel
@2byte
Jul 25 2014 08:30
Непонимаю чем так привлекает такой шрифт
Alexander Egorov
@Amegatron
Jul 25 2014 08:30
меня ничем, меня стандартная тема dracula полностью утраивает, только увеличил малость размеры
slider23
@slider23
Jul 25 2014 08:30
шрифт привлекает тем, что на демо-странице тема не много места занимает :)
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 08:34
во всех темах от Rees один недостаток $this->bindings[$abstract] - скобки одного цвета с переменнми
slider23
@slider23
Jul 25 2014 08:37
угу. вообще, функциональность цвета нормальная только в дефолтной теме.
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 08:40
я юзаю даркулу, но измененную для twig
Alexander Zhuravlev
@SCIF
Jul 25 2014 08:43
+1 за даркулу
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 08:44
кстати советую попробовать, если кто активно работает с твиг в шторме, то подправить схемму, выставив у identifier цвет как у variable для php, и brakets выставить слегка темнее или светлее
Aza Noriega
@MegaGM
Jul 25 2014 08:49
После явно лучше :) Вообще люблю фиолетовый :D вот настолько http://screencloud.net/v/d19M
Thomas Anderson
@elvendor
Jul 25 2014 08:51
@MegaGM а подскажи, что за шрифт?
Aza Noriega
@MegaGM
Jul 25 2014 08:51
PragmataPro
Thomas Anderson
@elvendor
Jul 25 2014 08:51
не из встроенных, я так понимаю?
Aza Noriega
@MegaGM
Jul 25 2014 08:52
Конечно. Долго искал Monospace для использования в шеллах, нашел :) И так же заметил, что он очень приятен для кода
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 08:54
@MegaGM а можешь "сфоткать" как у тебя будет такой код?
    private function _checkAccessRole(&$accessRole, $user, $prop = array())
    {
        if (empty($accessRole) || !is_string($accessRole)) {
            $accessRole = false;
        } else {
            if (preg_match('~^([^\*\+\-]*)([\*\+\-]{1})(.*)$~', $accessRole, $matches)) {
                $head = $matches[1];
                $sign = $matches[2];
                $tail = $matches[3];
                if ('+' === $sign) {
                    $accessRole = $this->_checkAccessRole($head, $user, $prop)
                        || $this->_checkAccessRole($tail, $user, $prop);
                } elseif ('-' === $sign) {
                    $accessRole = $this->_checkAccessRole($head, $user, $prop)
                        && !$this->_checkAccessRole($tail, $user, $prop);
                } elseif ('*' === $sign) {
                    $accessRole = $this->_checkAccessRole($head, $user, $prop)
                        && $this->_checkAccessRole($tail, $user, $prop);
                }
            } elseif (strpos($accessRole, ':')) {
                $role_parts = explode(':', $accessRole, 2);
                if (!isset($this->_cachedRolesList[$role_parts[0].':'])) {
                    $accessRole = false;
                } else {
                    $this->_cachedRolesList[$accessRole] = $this->_cachedRolesList[$role_parts[0].':'];
                    $prop = array_merge($prop, array($role_parts[0]=>$role_parts[1]));

                    $accessRole = $accessRole = $this->_checkAccessLevel($this->_cachedRolesList[$accessRole], $user, $prop);
                }
            } elseif (!isset($this->_cachedRolesList[$accessRole])) {
                $accessRole = false;
            } else {
                $accessRole = $this->_checkAccessLevel($this->_cachedRolesList[$accessRole], $user, $prop);
            }
        }

        return !empty($accessRole);
    }
Aza Noriega
@MegaGM
Jul 25 2014 08:56
Хреново :D http://screencloud.net/v/AkHa
Thomas Anderson
@elvendor
Jul 25 2014 08:57
messy :)
хотя если логические блоки поотделять пустыми строками, то будет норм
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 09:04
не очень нравится цвет метода при вызове, цвет логических операторов. остальное вполне хорошо. особенно мне понравилось цвето & при объявлении передачи по ссылке. Если это не цвет бинарных операторов тоже
Aza Noriega
@MegaGM
Jul 25 2014 09:17
Ну это не моя цветовая схема, это Kalopsia для саблайма. А вот моя, переделанная из ocean.dark.base16 http://screencloud.net/v/jzeq
Alexey
@Butochnikov
Jul 25 2014 09:20
@slider23 виде по шторму всегда были фришными )
@Big-Shark а чем тебе пакет от @Amegatron не подходит?
Alexey
@Butochnikov
Jul 25 2014 09:26
@Big-Shark особенно это: NOTE! If you are adding languages, please check the rules about the capitalization of month and day names: http://meta.wikimedia.org/wiki/Capitalization_of_Wiktionary_pages#Capitalization_of_month_names
slider23
@slider23
Jul 25 2014 09:55
RT glorphindale: Пятница, кто не деплоит — тот слабак!
Aleksandr
@MrRino
Jul 25 2014 10:03
буэээ
slider23
@slider23
Jul 25 2014 11:38
Прикольно - http://www.paywithatweet.com . Например, http://www.andreagalanti.it/flatfy/ "продается" за пост в твиттере через этот сервис.
DeminAlexey
@DeminAlexey
Jul 25 2014 13:53
здравствуйте, я слышал в laravel есть такая штука, которая умеет менять окончание слова в зависимости от условий
например если 1 то проект
если 2 то проекта
если 100 то уже проектов
DeminAlexey
@DeminAlexey
Jul 25 2014 13:58
да не ей сложно, потому как загвоздок много например от 5 до 20 это проектов от 20 до 25 это проекта от 25 и далее опять проектов это что все в ручную прописывать? или я не правильно понимаю принцип работы?
slider23
@slider23
Jul 25 2014 13:59
русскоязычный плюрал тут в чатике обсуждался кем-то
сейчас увидят, ответят
Alexander Zhuravlev
@SCIF
Jul 25 2014 14:04
О! Как в симфони trans_choice()
GitterBot Приветствуем Вас, @sergeypavlenko, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснений отношений между участниками. За нарушение – Бан!
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 14:05
)) так это же и есть симфонивский класс
в смысле под капотом у лары
Sergei
@sergeypavlenko
Jul 25 2014 14:28
всем привет. Есть ли книги по laravel на русском ?
Nikolay Denisenko
@PEKTOP
Jul 25 2014 14:38
@sergeypavlenko нет. только english
Alexey
@Butochnikov
Jul 25 2014 14:39
есть
Nikolay Denisenko
@PEKTOP
Jul 25 2014 14:39
o_O
Sergei
@sergeypavlenko
Jul 25 2014 14:39
^)
Sergei
@sergeypavlenko
Jul 25 2014 14:39
спасибо
Nikolay Denisenko
@PEKTOP
Jul 25 2014 14:41
ну это слабый труд... я толко полистал немного, намного интереснее читать Otwell T. - Laravel - From Apprentice To Artisan
там совсем уже азы, большенство из которых раскрыты в документации...
Alexey
@Butochnikov
Jul 25 2014 14:42
самая продаваемая книга по Laravel ) для новичков самое то, особенно последние главы
Nikolay Denisenko
@PEKTOP
Jul 25 2014 14:43
если есть опыт с другими фремворками то быстро можно схватить все по документации
Alexander Zhuravlev
@SCIF
Jul 25 2014 14:44
@PEKTOP , я вот тоже удивляюсь книгам. Но если подумать, то получается, что раз человек говорит про русский вариант, то на 99% есть уверенность, что опыта с фреймворками у него нет
Nikolay Denisenko
@PEKTOP
Jul 25 2014 14:45
@sergeypavlenko у Вас есть опыт с другими фремворками?
Sergei
@sergeypavlenko
Jul 25 2014 14:45
@SCIF я тогда вошел в 1%. Мне было только интересно есть ли книги на русском
Nikolay Denisenko
@PEKTOP
Jul 25 2014 14:45
это круто!
Alexander Zhuravlev
@SCIF
Jul 25 2014 14:46
:) Ну ок, согласен, что как раз не более процента интересуется просто для того, чтобы узнать об их наличии, а не для чтения :P
Aleksandr
@MrRino
Jul 25 2014 14:46
опыт шмопыт. у меня сессия не работает в приложении, а мне никто так и не помог, и сам не пойму что не так :worried:
Sergei
@sergeypavlenko
Jul 25 2014 14:46
Ну почему, если бы книга на русском была хорошая. Почему бы не почитать. На английском книг еще не читал. Только доки
Alexander Zhuravlev
@SCIF
Jul 25 2014 14:46
@MrRino , что в логах?
Зато как мы вчера в 4 утра с регуляркой всей толпой баловались... :) Уютненький чатик.
Aleksandr
@MrRino
Jul 25 2014 14:47
ничего, что могло бы вызвать подозрение
Nikolay Denisenko
@PEKTOP
Jul 25 2014 14:48
@MrRino и вообще вопрос должен быть с контекстом и кодом... чтобы можно было осмыслить проблему
Alexander Zhuravlev
@SCIF
Jul 25 2014 14:48
@MrRino , в студию что там есть
Sergei
@sergeypavlenko
Jul 25 2014 14:52
а на английском есть у кого-то книги в pdf ?
Alexander Zhuravlev
@SCIF
Jul 25 2014 14:52
У меня «пиратская» про тестирование валяется
Nikolay Denisenko
@PEKTOP
Jul 25 2014 14:52
а у меня от тэйлора
вот и библиотека складывается
Sergei
@sergeypavlenko
Jul 25 2014 14:53
скиньте пожалуйста
Alexey
@Butochnikov
Jul 25 2014 14:54
только в личках пож-ста
Sergei
@sergeypavlenko
Jul 25 2014 14:54
да, конечно
Aleksandr
@MrRino
Jul 25 2014 14:56
им не книгу пожалуйста) только тссссс
сейчас поясню ситуацию с кодом
@SCIF логи из приложения?
Alexander Zhuravlev
@SCIF
Jul 25 2014 14:57
app/storage/logs/
Alexander Zhuravlev
@SCIF
Jul 25 2014 14:59
100kb трейсов за 25 минут. СОвсем ничего подозрительного

production.ERROR: exception 'ErrorException' with message 'Illegal string offset 'username'' in C:\OpenServer\domains\gdev.ru\app\controllers\UserAutentification.php:21

Не смущает?

Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:00
попахивает
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:00
Вообще рассказываю как делается — файл обнуляется/удаляется. Дальше повторяется ситуация с косяком и именно этот лог, без лишнего мусора, вываливается на всеобщее обозрение
Aleksandr
@MrRino
Jul 25 2014 15:00

Auth::check() не хочет со мной дружить. Проходит авторизацию, делаю редирект, там проверяю на Auth::check(), и меня выбрасывает снова на авторизацию...
Драйвер стоит file. пробовал и database, не помогло. В базе так же наблюдал изменение сессии с каждым запросом.
в куках есть через firebag
Name:remember_{набор букв}
Value: {много букв}
что соответственно присутствует. и эта value одна и та же, т.е ее он не меняет
Если на странице атворизации вывести var_dump(Auth::user()->user_name) - OK, пользователь авторизован и найден
при редиректе авторизация отвалилась...

@SCIF хммм...это што такое...

Alexander Zhuravlev
@SCIF
Jul 25 2014 15:00
production.ERROR: exception 'ErrorException' with message 'Argument 1 passed to Illuminate\Auth\Guard::login() must be an instance of Illuminate\Auth\UserInterface, boolean given
Не похоже, что логин удачен.
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:03
думаю в $credentials запинка... сделай перед логином dd($credantials) - ну или что ты передаешь в функцию
Aleksandr
@MrRino
Jul 25 2014 15:03
@SCIF очистил))) лог теперь вообще молчит)) 5 раз всю процедуру повторил, пустой
@PEKTOP dd() - это что?
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:04
алиас var_dump
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:04
disk delete — форматирует диск...
Воткни, Log::error(Auth-чего-там) чтобы убедиться, что логин прошёл хорошо.
Aleksandr
@MrRino
Jul 25 2014 15:07
@SCIF воткнул : [2014-07-25 15:06:56] production.ERROR: 1 [] [] - это есть хорошо?
dd возвращает true если данные введены, но после редиректа авторизация отваливается
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:08
Код покажешь? Что-то не похож этот пустой массив на true
Aleksandr
@MrRino
Jul 25 2014 15:11
как тут код оформлять?
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:12
Ctr + Alt + M
Aleksandr
@MrRino
Jul 25 2014 15:13
$input = Input::only("username", "password");
$success = Auth::attempt(['user_name'=>$input['username'], 'password'=>$input['password']], true, true);
if(!$success) {
Session::flash('error_signup','Неверно введены данные логин/пароль');
return Redirect::to('/');
}
return Redirect::intended('home');
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:13
Коллеги, а что такое BelongsToMany? Это ответная сторона для hasMany?
Aleksandr
@MrRino
Jul 25 2014 15:13
блин
$input = Input::only("username", "password"); $success = Auth::attempt(['user_name'=>$input['username'], 'password'=>$input['password']], true, true); if(!$success) { Session::flash('error_signup','Неверно введены данные логин/пароль'); return Redirect::to('/'); } return Redirect::intended('home');
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:16
Log::error($success); сразу после второй строки
@MrRino , ты оформил как строчный, а нужно как блочный — втыкаешь «```», потом перенос строки, потом код и закрывающий «```»
Aleksandr
@MrRino
Jul 25 2014 15:18
понял.
вот что там [2014-07-25 15:17:09] production.ERROR: 1 [] [] вышло в log
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:19
Дддааа. Чувак, ты жжёшь.
ЧТо делает третий параметр в Auth::attempt()?
Log::error(Auth::validate(['user_name'=>$input['username'], 'password'=>$input['password']])); второй строкой сделай
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:21
надо так
$input = Input::only("username", "password"); 
$success = Auth::attempt(['user_name'=>$input['username'], 'password'=>$input['password']], true, true); 
if(!$success) { 
    Session::flash('error_signup','Неверно введены данные логин/пароль'); 
    return Redirect::to('/'); 
} 
return Redirect::intended('home');
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:21
Или не совсем жжёшь, я никогда не работал с авторизацией.
В любом случае нужно validate сделать
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:22
либо посмотреть что в $input приходит
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:23
Не, нужно именно валидейт
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 15:24
валидэйт чего?
Aleksandr
@MrRino
Jul 25 2014 15:24
вот, все правильно @PEKTOP сказал.
в классе:
 public function attempt(array $credentials = array(), $remember = false, $login = true)
   {
    $this->fireAttemptEvent($credentials, $remember, $login);

 $user = $this->provider->retrieveByCredentials($credentials);

        if ($user instanceof UserInterface) 
         {
           if ($this->provider->validateCredentials($user, $credentials))
            {
               if ($login) $this->login($user, $remember);

               return true;
          }
       }

 return false;
 }
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:25
$credentials это грубо говоря твои поля в таблице
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:25
Log::error(Auth::validate(['user_name'=>$input['username'], 'password'=>$input['password']])); второй строкой сделай
Aleksandr
@MrRino
Jul 25 2014 15:25
Validate тут не причем, там он все равно по тем правилам проверит, что ты укажешь.
сейчас попробую
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:25
он по названию сравнивает поля и имена ключей в массиве
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:25
Меня в attempt() сильно смущает третий параметр. Я не знаю, что это такое
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 15:26
это логинить пользователя или нет если он нужный, по дефолту он тру
так что от него не тепло не холодно
Aleksandr
@MrRino
Jul 25 2014 15:26
@SCIF `[2014-07-25 15:25:56] production.ERROR: 1 [] []
пусто
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:27
@Ellrion , да, точно, дефолтное значение в экран не влезло и не заметил :D
Aleksandr
@MrRino
Jul 25 2014 15:28
мне кажется тут все же сессию почему то не сохраняет. он авторизует, но при редиректу вбивает новую сессию и все, провал авторизации, т.к она на старой сессии. почему так, не знаю.
в конфиге сессии все перепробывал. и фреймворк переустанавливал, одна и таже проблема
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 15:29
а попробуй авторизоваться со вторым пораметром false
тоесть без remember
можно вообще 2 последних параметра отбросить в attempt
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:31
и еще проверь модель User , а также конфиг auth.php
Aleksandr
@MrRino
Jul 25 2014 15:31
и комп ребутнул не раз :smile:
@Ellrion я пробовал) и так и так
Maksim (Ellrion) Platonov
@Ellrion
Jul 25 2014 15:32
вобщем выкладывай весь код который можешь в гист например. иначе гадать будем вечно)
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:32
модель должна реализовать интерфейс Illuminate\Auth\UserInterface
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:32
Что в настройках куки? .domain.tld и /?
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:32
да да. и это тоже имеет не малое значение
Aleksandr
@MrRino
Jul 25 2014 15:35

Модель User

use Illuminate\Auth\UserTrait;
use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableTrait;
use Illuminate\Auth\Reminders\RemindableInterface;
class User extends Eloquent implements UserInterface, RemindableInterface {
    use UserTrait, RemindableTrait;
    protected $table = 'users';
    protected $hidden = array('password','phone');
}

конфиг auth.php

return array(
    'driver' => 'eloquent',
    'table' => 'users',
    'reminder' => array(
        'email' => 'emails.auth.reminder',
        'table' => 'password_reminders',
        'expire' => 60,
    ),
);
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:36
в конфиге нет модели
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:36
Зато есть таблицы :D Забавно
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:37
<?php
return array(
    'driver' => 'eloquent',
    'model' => 'User',
    'table' => 'users',
    'reminder' => array(
        'email' => 'emails.auth.reminder',
        'table' => 'password_reminders',
        'expire' => 60,
    ),
);
Aleksandr
@MrRino
Jul 25 2014 15:37
конфиг sessions.php

return array(

    'driver' => 'file',
    'lifetime' => 120,
    'expire_on_close' => false,
    'files' => storage_path().'/sessions',
    'connection' => null,
    'table' => 'sessions',
    'lottery' => array(2, 100),
    'cookie' => 'laravel_session',
    'path' => '/',
    'domain' => '.domain.tld',
    'secure' => false,
);
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:37
Таблицу, в случае eloquent можно выкинуть
ЭЭэээ. А тестовый домен какой? Где у тебя виртуальный хост?
Неужели на domain.tld ты браузером ходишь???
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:38
это случай когда как готоврится переконфигурировал
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:39
Да я советовал указать .domain.tld. Ну я был уверен, что человек догонит, что это просто шаблон
Aleksandr
@MrRino
Jul 25 2014 15:39
не не, таблицы и модели есть там, это просто когда тут лишнее удалял, и ту удалил)
и свой домен я указывал, и в null забивал, это не помогает
я понял тебя
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:39
хм...
так где же все таки собака зарыта?
Aleksandr
@MrRino
Jul 25 2014 15:40
это уже пошли 3и сутки как я не могу откопать истину)
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:40
В app/storage/sessions файлики появляются?
Что браузер на предмет кук говорит? Лара их стабильно выставляет?
Aleksandr
@MrRino
Jul 25 2014 15:43
конечно, и каждый раз новые. если использовать driver database то там сессия с каждым переходом на страницу забивается новая. но не должно же быть так
куки в браузере имеются https://yadi.sk/i/SFYzZEMqXMmtf
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:43
После успешного логина, сессия должна обновиться. Это нормальное поведение
Aleksandr
@MrRino
Jul 25 2014 15:43
на шаблон не смотреть, это тест же)
обновляться каждый раз? сессия то вроде как должна быть одна за сеанс
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:44
Ровно после авторизации, обновляется идентификатор, чтобы не было всяких случайностей.
В доках сказано про это.
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:45
сессия в сторадже одна а вот на фронте каждый запрос хэш меняется
но у тебя 2 сессии и 2 ключа remember - это попахивает
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:46
Без точки, стоит грохнуть
Дебильный вариант, но всё же — логи веб-сервера глянь
Aleksandr
@MrRino
Jul 25 2014 15:48
удалил, перезашел, но увы и ах... https://yadi.sk/i/I0C1ZGaGXMsk7
@SCIF и там был, ничего кроме запросов ошибок тоже нет
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:52
This message was deleted
Aleksandr
@MrRino
Jul 25 2014 15:53
у кого локалка под рукой? давайте скину архив с приложением и дампом базы.
просто интересно, может меня машина тупит...
ща только курну, нерв нехватает :fire:
Alexander Zhuravlev
@SCIF
Jul 25 2014 15:54
Гм. Вопрос. Неужели первичный ключ для лары обязан быть autoincrement???
    public function en()
    {
        return $this->belongsTo('Page', 'id', 'id')->whereLang('en');
    }
Такая вот конструкция нифига нормально не работает :(
    /**
     * Indicates if the IDs are auto-incrementing.
     *
     * @var bool
     */
    public $incrementing = true;
О как!
Nikolay Denisenko
@PEKTOP
Jul 25 2014 15:59
нет. не обязательно. у меня есть таблицы где первичный ключ вообще не autoinc и работатет
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:00
@PEKTOP , у меня не работало сохранение связей. Поставил $incrementing = false и заработало
Nikolay Denisenko
@PEKTOP
Jul 25 2014 16:00
@MrRino давай - я под лином - смогу быстро запустить....ток с миграциями или дампом
@SCIF, это api 4.2?
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:00
У меня 4.2
Nikolay Denisenko
@PEKTOP
Jul 25 2014 16:01
а я пока еще не портировал приложения под новый api
Aleksandr
@MrRino
Jul 25 2014 16:01
сейчас быстро сделаю
Nikolay Denisenko
@PEKTOP
Jul 25 2014 16:01
на 4.1 не было таких ограничений
Конкретно — belongsTo не отрабатывала
Я блин вчера в 4:30 лёг, в основном по этой причине. И сегодня, уже 3, а я только разобрался. 1 строка кода за 4.5 часа! :)
Nikolay Denisenko
@PEKTOP
Jul 25 2014 16:03
бывает...
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:03
И миллиард дебага. Там просто сложная структура, был уверен, что вообще не в этом дело. Пока просто тестовый стенд не собрал — не уловил, что дело не в моём коде.
Nikolay Denisenko
@PEKTOP
Jul 25 2014 16:03
но эт нормально - я неделями на мелочах загоняюсь а потом за неделю пишу код за весь месяц...
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:04
Я не могу без каскадного сохранения. Если сейчас я запущу эту хреновину, с которой уже давно бьюсь, то буду для элоквента каскадное сохранение делать.

string 'Ok!' (length=3)

Мать, моя женщина. Как долго я ждал этой строки :))

Восход солнца руками, в тестовых условиях, состоялся :D
тут вообще все)
Nikolay Denisenko
@PEKTOP
Jul 25 2014 16:10
@MrRino login:pass
Aleksandr
@MrRino
Jul 25 2014 16:10
от чего?
Nikolay Denisenko
@PEKTOP
Jul 25 2014 16:11
входа
пароль хэшированный в БД
Aleksandr
@MrRino
Jul 25 2014 16:11
зарегистрируй себя новым, рега то работает)
это единственное что там работает :smile:
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:16
@PEKTOP , тоже сбрасывает логин?
Nikolay Denisenko
@PEKTOP
Jul 25 2014 16:16
мне нужно отойти, но пока только заметил
<?php

use Illuminate\Auth\UserTrait;
use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableTrait;
use Illuminate\Auth\Reminders\RemindableInterface;

class User extends Eloquent implements UserInterface, RemindableInterface {

    use UserTrait, RemindableTrait;

    /**
     * The database table used by the model.
     *
     * @var string
     */
    protected $table = 'users';

    protected $primaryKey = 'id_users';

    /**
     * The attributes excluded from the model's JSON form.
     *
     * @var array
     */
    protected $hidden = array('password','phone');


}
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:20
@MrRino , ты это на хоумстеде делаешь?
Aleksandr
@MrRino
Jul 25 2014 16:21
@PEKTOP :clap: мать моя женщина, авторизовал О_о
@SCIF ага
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:22
А что именно не так?
Aleksandr
@MrRino
Jul 25 2014 16:23
Только почему то выводится теперь так) https://yadi.sk/i/sPXYMBvHXNewc
`protected $primaryKey = 'id_users';
в этом проблема была....кто ж знал, что в модели и ключи указывать надо
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:24
Ты про primaryKey?
Это Session::flash() накопился :))
Aleksandr
@MrRino
Jul 25 2014 16:26
как там очистить сессию, Session::reflash() вроде
да, без PrimaryKey не хотел работать, а тут заработал сразу О_о
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:27
Ну так если ты его переопределяешь, то ессно обязан обозначить это

Как раз открыта цитата для тебя.

Note: Eloquent will also assume that each table has a primary key column named id. You may define a primaryKey property to override this convention.

Aleksandr
@MrRino
Jul 25 2014 16:28
ппц, я не знал вообще
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:28
Это я сейчас про autoincrement искал, про него в доках, к сожалению, ничего не было :)
Ну вообще, без primaryKey, знаешь ли как-то тяжело орму работать :)
Любому
Aleksandr
@MrRino
Jul 25 2014 16:30
Блин))) это не Session::flash() :smile: это я не знаю что такое))) все сессии почистил, и все равно 3 повторяющихся записи)
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:34

@MrRino ,

@foreach($user as $users)

Aleksandr
@MrRino
Jul 25 2014 16:36
@SCIF Undefined variable: user он мне пишет в таком случае
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:37
??? Это твой код.
Ты перебираешь свойства юзера и при этом дальше выводишь его имя.
Если ты хотел имена всех пользователей, то может поменяешь местами $users и $user? Хотя тут уже тебе дальше разбираться.
Aleksandr
@MrRino
Jul 25 2014 16:38
да это я в курсе, как foreach работает)
Alexander Zhuravlev
@SCIF
Jul 25 2014 16:39
Ну так а что непонятного? Значит у твоего пользователя три свойства, вот три раза и итерирует
Aleksandr
@MrRino
Jul 25 2014 16:43
не может быть)
Aleksandr
@MrRino
Jul 25 2014 16:52
все, дошло) тут foreach вообще не нужен, вспомнил прошлые ошибки)
блин, как долго я с этим мучался, ппц) гребаный ```protected $primaryKey = 'id_users';
@PEKTOP вообще красава :+1:
Alexander Zhuravlev
@SCIF
Jul 25 2014 17:02
Всем спокойной ночи
Aleksandr
@MrRino
Jul 25 2014 17:02
Давай, доброй
DeminAlexey
@DeminAlexey
Jul 25 2014 18:04
парни извините опять не по теме, а как можно просмотреть ip визитера в гугл аналитик?
DeminAlexey
@DeminAlexey
Jul 25 2014 19:44
а можно как-то в ларе вывести дату на русском языке в формате 25 ноябра 2014 например?
ноября*
Brezhnev Ivan
@vanchelo
Jul 25 2014 19:45
да
Localized Carbon
DeminAlexey
@DeminAlexey
Jul 25 2014 19:46
спасибо