These are chat archives for LaravelRUS/chat

11th
Dec 2017
Denis Mazur
@lans8097
Dec 11 2017 05:17
Всем привет.

Или мне пора спать, или я что-то в этой жизни не понимаю....
Не работает редирект после исключения.

model:
use \Exception;
function blavla()
{
   throw new \Exception('olololo');
}

controller:
use \Exception;

function blabla(){
try{
......
} catch(\Exception $e)
            {
                \DB::rollBack();
                return \Redirect::back()->withErrors([$e->getMessage()]);
            }{

catch сробатывает, но не редиректит......

Lander931
@Lander931
Dec 11 2017 05:26

@lans8097
Попробуй так

request()->session()->flash('error',$e->getMessage());
return back();

а в шаблоне лови session('error')

Denis Mazur
@lans8097
Dec 11 2017 05:28
@Lander931 таже фигня.
Тупо пустая страница хотя если в catch что-то написать то выводит... но не редиректит
@Lander931 канеш могу в наглую через заголовок, но как-то это не правильно
Lander931
@Lander931
Dec 11 2017 05:30
@lans8097 просто back()работает? Без передачи ошибки?
Denis Mazur
@lans8097
Dec 11 2017 05:33
@Lander931 таже фигня...
@Lander931 пффф ладушки пойду посплю, может само собой решится XD
Lander931
@Lander931
Dec 11 2017 05:35
@lans8097 100%))
Denis Mazur
@lans8097
Dec 11 2017 05:43
@Lander931 тюю мляяя редирект не работает в callback
Lander931
@Lander931
Dec 11 2017 05:44
@lans8097 ты от этого проснулся?
am0nshi
@am0nshi
Dec 11 2017 05:49
@miki131 вложенные запросы в мускуле - зло. юзай джоины. это раз, два - в ларке есть 2 пагинатора из коробки, второй не считает общее количество страниц и не использует этот запрос. ну или можно написать свой пагинатор и юзать какой-то сторонний кеш со счетчиком.
Denis Mazur
@lans8097
Dec 11 2017 05:51

@am0nshi return \DB::transaction(
Решил все проблемы =).

Как только положил голову на подушку до меня дошло что я работаю в анонимной функции

спасибо @Lander931
всё теперь точно спать.
Всем удачного дня
Lander931
@Lander931
Dec 11 2017 05:55
@lans8097 Давай
Vladymyr
@Kylaksizov
Dec 11 2017 06:17
Всем привет
Только узнал о чатах для разработчиков) Крутяк)
Есть ли этот канал в телеграмме?
Vlad Shcherbin
@VladShcherbin
Dec 11 2017 06:44
@Kylaksizov привет, есть :wink:
Vladymyr
@Kylaksizov
Dec 11 2017 07:08
@VladShcherbin О прикольно
Я впервые тут, может мне кто-то подсказать что тут делать можно просто общаться?
Vlad Shcherbin
@VladShcherbin
Dec 11 2017 07:10
@Kylaksizov в этом чате вопросы по разработке, на другие темы есть offtop чат
Vladymyr
@Kylaksizov
Dec 11 2017 07:11
@VladShcherbin понял, спасибо
am0nshi
@am0nshi
Dec 11 2017 07:22
подскажите кто как ресурсы хранит? компилите ли вы их на сервере? или храните в скомпиленном виде прямо в репозитории?
Vlad Shcherbin
@VladShcherbin
Dec 11 2017 07:29
@am0nshi локально, на сервер уже скомпиленные закидываю
Liongetter
@Liongetter
Dec 11 2017 07:59
не подскажет кто где храниться файл c историей командной оболочкой tinker в винде
am0nshi
@am0nshi
Dec 11 2017 08:24
@VladShcherbin каким образом? через репо?
Vlad Shcherbin
@VladShcherbin
Dec 11 2017 08:26
@am0nshi да, я всё используя гит закидываю
можно всякими деплоерами пользоваться, как вариант
am0nshi
@am0nshi
Dec 11 2017 08:32
вот я его и настраиваю, и в теории могу билдить ассеты прям на нем и не завирать основной сервак
но что-то мне не очень нравится этот вариант
Касымов Нурлан
@DaaGER
Dec 11 2017 09:04
Приветствую. Подскажите, как из Carbon получить день недели по номеру?
Касымов Нурлан
@DaaGER
Dec 11 2017 09:20
@jhaoda не нашел того, что нужно
Lander931
@Lander931
Dec 11 2017 09:23
@DaaGER ctrl+f 'Week'
там всего-то 49 совпадений
Касымов Нурлан
@DaaGER
Dec 11 2017 09:29
Возможно нужно уточнить, но я имею только номер недели.
Lander931
@Lander931
Dec 11 2017 09:30
@DaaGER номер недели или номер дня недели?
как из Carbon получить день недели по номеру?
Касымов Нурлан
@DaaGER
Dec 11 2017 09:31
@Lander931 описка, конечно же номер дня недели.
Vlad Shcherbin
@VladShcherbin
Dec 11 2017 09:45
@DaaGER приведи пример - у меня есть и что нужно получить
Касымов Нурлан
@DaaGER
Dec 11 2017 09:50
У менять есть числа, номера дня недели 1,3,4 и т.п. Зная только их, получить названия этих дней недели Понедельник, Среда и т.д. Задавать их ручками и прокидывать не хочется, если Carbon сам так умеет. Ни в коде, ни в документации я не нашел такой возможности, но @jhaoda и @Lander931 видимо пытались меня убедить в обратном. Пока решил таким не очень красивы способом: Date::today()->startOfWeek()->addDays($numberOfDay-1)->format('l')
Lander931
@Lander931
Dec 11 2017 09:51
@DaaGER напрямую такого метода нет
JhaoDa
@jhaoda
Dec 11 2017 09:51
@DaaGER ну если этого нет в документации, значит нельзя. И тебя не пытались убедить, что оно есть
Касымов Нурлан
@DaaGER
Dec 11 2017 09:56
А смысл тогда кидать ссылку на документацию и писать " ctrl+f 'Week'там всего-то 49 совпадений"? Это можно расценить только как "смотри внимательнее, там оно есть". Ваши сообщения в итоге не были полезны от слова "совсем", но вы хотя бы попытались.
Vlad Shcherbin
@VladShcherbin
Dec 11 2017 10:01
@DaaGER можешь так попробовать, если подойдёт
Касымов Нурлан
@DaaGER
Dec 11 2017 10:32
@VladShcherbin спасибо, хороший вариант.
kozlikov
@kozlikov
Dec 11 2017 20:34
Здравствуйте.
Уточните, пожалуйста, как можно запретить повторную авторизацию пользователя, который пытается зайти в систему с любого другого устройства под тем же логном?
Т.е. нельзя создать вторую сессию под данным логином.
Ваня Devium
@webdevium
Dec 11 2017 20:36
стандартными средствами - никак
kozlikov
@kozlikov
Dec 11 2017 20:37
@webdevium Это понятно, а вообще есть какие-нибудь идеи или готовые решения?
Kirill Nesmeyanov
@SerafimArts
Dec 11 2017 20:38
@kozlikov тупо писать в рекорд юзера идентификатор сессии
и всё
Ваня Devium
@webdevium
Dec 11 2017 20:38
Конечно, используй какой-либо data storage, чтоб записать откуда он логинился последний раз0
Kirill Nesmeyanov
@SerafimArts
Dec 11 2017 20:38
если юзер залогинится с телефона, то его выкинет из предыдущей сессии, т.к. поле перезапишется новым значеним.
kozlikov
@kozlikov
Dec 11 2017 20:39
@SerafimArts Я Вас понимаю, о чем Вы. Но мне не нужно выкидывать пользователя, который был ранее авторизован, т.е. первым. Нужно НЕ пускать тот, кто хочет вторым войти. ))
Kirill Nesmeyanov
@SerafimArts
Dec 11 2017 20:40
@kozlikov ты ведь понимаешь, что это бред?
kozlikov
@kozlikov
Dec 11 2017 20:40
@SerafimArts Увы, бизнес хочет так!(((
Kirill Nesmeyanov
@SerafimArts
Dec 11 2017 20:40
Чувак потерял пароль. Что ему делать?
Он больше войти не может
Ну или чел сбросил настройки браузера
Vlad Shcherbin
@VladShcherbin
Dec 11 2017 20:40
писать в тех.поддержку)
Kirill Nesmeyanov
@SerafimArts
Dec 11 2017 20:40
больше залогиниться он не может
ну и т.д.
kozlikov
@kozlikov
Dec 11 2017 20:41
@SerafimArts Подождите, так быстро не наседайте))
Kirill Nesmeyanov
@SerafimArts
Dec 11 2017 20:41
можно придумать миллион ситуаций, когда у человека пропадает доступ к своему состоянию аутентификации.
Простое "битое" обновление браузера, ну или просто смена браузера
Ваня Devium
@webdevium
Dec 11 2017 20:42
тю, у меня так работает логин
отваливается по истечении простойного лимита
kozlikov
@kozlikov
Dec 11 2017 20:42
@webdevium на логин только одна сессия?
Ваня Devium
@webdevium
Dec 11 2017 20:44
только одно устройство, ага
Kirill Nesmeyanov
@SerafimArts
Dec 11 2017 20:44
Да ладно, вон телега
работает почти по этому принципу
kozlikov
@kozlikov
Dec 11 2017 20:44
@webdevium А если пользователь закрыл приложение на данном устройстве, как быстро он сможет зайти в приложение из другого устройства в Вашем случае?
@SerafimArts А что за телега ?
Ваня Devium
@webdevium
Dec 11 2017 20:48
@kozlikov если закрыл правильно - моментально. Если неправильно - через 12 часов
часы настраиваются в конфигах
kozlikov
@kozlikov
Dec 11 2017 20:51
@webdevium session_id - храните в БД users ?
Ваня Devium
@webdevium
Dec 11 2017 20:51
в редисе
kozlikov
@kozlikov
Dec 11 2017 20:54
@webdevium Ясно, спасибо
Kirill Nesmeyanov
@SerafimArts
Dec 11 2017 20:55
если ты потерял сессию, то войти больше не получится никак
Ваня Devium
@webdevium
Dec 11 2017 20:56
а вот если в редис писать с ttl, то можно :)
kozlikov
@kozlikov
Dec 11 2017 21:07
Не могу поставить redis или даже memcaсhe - ибо это будет очень сложно, бюрократия (((
Придется через laravel Cache
Ваня Devium
@webdevium
Dec 11 2017 21:07
крон хоть можешь заюзать? :)
kozlikov
@kozlikov
Dec 11 2017 21:08
ДА ДА - это ппц как спасает)))
Ваня Devium
@webdevium
Dec 11 2017 21:09
ну вот с кроном можно потанцевать... будет не так ярко как с редисом, но - выполнимо