These are chat archives for LaravelRUS/chat

22nd
Jan 2017
PyatnitskiiSK
@snowsem
Jan 22 2017 10:21
Коллеги, приветствую вас! Я в e-commerce никогда не работал. Вопрос: Как вы делали конструкторы Акций, скидок и распродаж? Акции же разные: купи 3 получи еще один или в сб и вскр скидка на определенную категорию. Не писать же все эти условия кодом. Есть примеры или почитать что. А лучше человек с которым можно посоветоваться.
KarmaBot
@KarmaBot
Jan 22 2017 10:21
@snowsem, привет, как настроение?
PyatnitskiiSK
@snowsem
Jan 22 2017 10:21
@KarmaBot привет, отличное!
KarmaBot
@KarmaBot
Jan 22 2017 10:21
@snowsem, ну рассказывай. Как жизнь? :)
PyatnitskiiSK
@snowsem
Jan 22 2017 10:21
@KarmaBot просто класс
JhaoDa
@jhaoda
Jan 22 2017 11:00
@symbios-zi пинг. Кинь гражданину @snowsem видосик с ларакона, по которому ты делал акции
Дмитрий Мязин
@d4c0
Jan 22 2017 11:16
Ребята, это обычное поведение, что при обращении к серверу с истёкшим jwt токеном, мне сначала приходит ответ о том что токен истёк, а при повторном запросе он рефрешится, и меня пускает? Или он должен проверяться на свежесть и рефрешиться в контексте одного запроса? Проясните пожалуйста.
nortan
@nortan
Jan 22 2017 11:29
Всем привет! Ищу разработчика на проекты, может кто хочет? Описание по ссылке - https://laravel.ru/forum/viewtopic.php?id=2222
KarmaBot
@KarmaBot
Jan 22 2017 11:29
Приветствую тебя, @nortan!
nortan
@nortan
Jan 22 2017 11:30
Если у кого-то есть вопросы и готов обсудить онлайн - велком!
projct1
@projct1
Jan 22 2017 11:36
подскажите плз, если я не сделал предварительную загрузку рилейшена bron, то лара при следующих обращениях будет каждый раз запрос делать? или как-то кеширует?
{{ $selection->bron->bar->name }} на {{ $selection->bron->amount }}
{{ plural($selection->bron->amount, 'человека', 'человек') }}
JhaoDa
@jhaoda
Jan 22 2017 11:40
@rorc а ты в дебагбаре проверь
projct1
@projct1
Jan 22 2017 11:40
@jhaoda у меня нет его :)
JhaoDa
@jhaoda
Jan 22 2017 11:41
@rorc а ты его поставь
@rorc ну и bron это прям ваще красота. В гугл переводчике забанили?
projct1
@projct1
Jan 22 2017 11:43
?
Andrei Sosnov
@atehnix
Jan 22 2017 11:44

@jhaoda рядом эти слова вообще хорошо)

рилейшен bron

JhaoDa
@jhaoda
Jan 22 2017 11:45
@atehnix кккомбо! :)
projct1
@projct1
Jan 22 2017 11:45
не понял в чём прикол :)
JhaoDa
@jhaoda
Jan 22 2017 11:46
@rorc предлагаю узнать, как на английский переводится «бронирование стола в ресторане»
@rorc или пиши $vybor->bron->kolichestvo, для единообразия
projct1
@projct1
Jan 22 2017 11:47
=/
Дмитрий Мязин
@d4c0
Jan 22 2017 13:09
Товарищи, объясните пожалуйста простым языком, что такое Guard и Provider в контексте аутентификации? Доку уже 7 раз прочитал, но как то картина не складывается. Понял только то, что провайдер указывает какое хранилище данных использовать, что-бы достать данные о пользователе по креденшелам. Нет целостной картины в голове...
Mikhail Sychev
@snutworks
Jan 22 2017 13:38
Всем привет! А есть тут люди которым удалось редиректнуться обратно на целевую страницу при социальной авторизации через socialite?
KarmaBot
@KarmaBot
Jan 22 2017 13:38
Не узнал тебя, @snutworks. Богатым будешь :)
Роман Сохарев
@greabock
Jan 22 2017 14:02
@d4c0 а ты перевод читать пробовал? Может понятнее будет. Правда перевод в спешке дикой делался.
Anton Vorontsov
@symbios-zi
Jan 22 2017 15:11
@snowsem привет. Тут в видео рассматривается вариант реализации скидок.
https://www.youtube.com/watch?v=5DVDewOReoY
Mikhail Sychev
@snutworks
Jan 22 2017 16:13
Еще раз привет, а кто как решал дефолтные аватарки в социальной аутентификации? Я перекопал уже все что мог, но не нашел способа заэкстендить дефолтный фейсбучный провайдер, подскажите куда копать?
KarmaBot
@KarmaBot
Jan 22 2017 16:13
Не узнал тебя, @snutworks. Богатым будешь :)
Serhii Chaplia
@iwex
Jan 22 2017 16:14
@snutworks не понял)
isaiddestroy
@isaiddestroy
Jan 22 2017 16:24
Всем привет.
Кстати, поддержу вопрос @d4c0, я тоже мало что понял на тему гардов. Ни в оригинальной доке, ни в переводе. Гуглёж тоже мало дал.
Зачем нужны гарды и как ими пользоваться? Почему не хватает обычного middleware?
Mikhail Sychev
@snutworks
Jan 22 2017 16:26
@iwex ну я хочу кастомный провайдер для фейсбука сделать, не пойму как мне его вкорячить
Serhii Chaplia
@iwex
Jan 22 2017 16:27
@snutworks сошиалайт?
@isaiddestroy ну будет у тебя логика посложнее, да и мидлвер пихать везде - так себе
@isaiddestroy если у тебя нет проблем и тебе всё нравится, не обращай внимания) Будет сложная аутентификация - будешь копать)
isaiddestroy
@isaiddestroy
Jan 22 2017 16:40
@iwex, можешь привести примеры, когда это потребуется? Если не сложно, конечно же.
Serhii Chaplia
@iwex
Jan 22 2017 16:43
@isaiddestroy я, например, использую \Illuminate\Auth\TokenGuard как стандартный гард, вся аутентификация через токен в запросе, не парюсь с созданием новых middleware, всё что есть в Auth:: мне доступно
@isaiddestroy можно делать мидлвер, но это будет сложнее и усложнит разработку
Mikhail Sychev
@snutworks
Jan 22 2017 16:47
@iwex ага
@iwex прости, отходил
isaiddestroy
@isaiddestroy
Jan 22 2017 16:48
@iwex, а как у тебя разграничение прав устроено и где ты права доступа проверяешь?
Serhii Chaplia
@iwex
Jan 22 2017 16:49
@snutworks так а что с аватарками не там, я не шарю что за проблема, но может вместе придумаем)
@isaiddestroy тьфу, аутентификация, спутал
@isaiddestroy поправил
isaiddestroy
@isaiddestroy
Jan 22 2017 16:51
@iwex, тоже поправил)
Serhii Chaplia
@iwex
Jan 22 2017 16:52
@isaiddestroy Policies, Gates, всё как в доках
isaiddestroy
@isaiddestroy
Jan 22 2017 16:59
@iwex, а. Понял. Я даун. Опять спутал авторизацию и аутентификацию, следовательно, подумал, что гарды занимаются ещё и авторизацией. Правда, это всё равно не добавило мне понимания того, зачем они тогда вообще нужны)
Спасибо, благодаря тебе я вовремя понял, где повернул не туда.
Serhii Chaplia
@iwex
Jan 22 2017 17:01
@isaiddestroy гарды)?
@isaiddestroy ну еще как пример, доступ к ресурсу может быть через апи или же через веб морду. 2 разных гарда - сесия или через токены
isaiddestroy
@isaiddestroy
Jan 22 2017 17:15
@iwex, точно, спасибо. Начал осознавать, вроде. Я просто смотрел на jwt-auth, и когда его подключаешь по гайду, никаких гардов настраивать не приходится. А в исходниках гард имеется. Только не знаю, используется ли он где-нибудь, или просто лежит "на всякий случай", лол. Попробую покурить исходники да разобраться.
Mikhail Sychev
@snutworks
Jan 22 2017 17:18
@iwex фейсбук отдает всегда некий путь на аватарку, это может быть дефолтным аватаром, можно закастомить запрос и узнать это дефолтная аватарка или нет, и только в этом случае её подсовывать, иначе говорить что мол нет аватарки. Я подумал что это можно решить через кастомный FBProvider, но не пойму как его в менеджер сунуть поверх уже используемого из коробки
картинка прям отражает суть =)
Mikhail Sychev
@snutworks
Jan 22 2017 17:36
@iwex веселее друга штука, редирект подкладывать на страницу с которой ушли в социалку
KarmaBot
@KarmaBot
Jan 22 2017 17:40
Прувет, @likeapimp!
Aleksandr Ayvazov
@mefist1990
Jan 22 2017 18:05
Всем привет. Скажите, кто то делал построчный вывод, при выполнении exec , команды wget на сервере , чтобы в ларе корректно в шаблон выводилось
KarmaBot
@KarmaBot
Jan 22 2017 18:05
@mefist1990, привет, как настроение?
Ваня Devium
@webdevium
Jan 22 2017 18:10
@mefist1990 а точнее?
Aleksandr Ayvazov
@mefist1990
Jan 22 2017 18:13
@webdevium делаю для своей работы, CRM , в CRM записываю несколько утилит, nmap, wget, ping и прочее. Они выполняются на сервере, но мне нужно видеть весь процесс выполнения, построчный
Ваня Devium
@webdevium
Jan 22 2017 18:15
@mefist1990 и чем ты их выполняешь, exec?
Aleksandr Ayvazov
@mefist1990
Jan 22 2017 18:20
@webdevium можно и system, не имеет значение.
Ваня Devium
@webdevium
Jan 22 2017 18:20
@mefist1990 ну так заюзай symfony console, там удобненько
и вывод каждый сможешь выловить
Aleksandr Ayvazov
@mefist1990
Jan 22 2017 18:35
@webdevium через cymfony console смогу на сайте работать, как через обычную консоль?
Ваня Devium
@webdevium
Jan 22 2017 18:36
@mefist1990 вот прям как в терминале, скорее всего, нет. То много писать придется.
PyatnitskiiSK
@snowsem
Jan 22 2017 19:02
@symbios-zi спасибо посмотрю)
KarmaBot
@KarmaBot
Jan 22 2017 19:02
Спасибо (+1) для @symbios-zi принято! Текущая карма +208.
Aleksandr Ayvazov
@mefist1990
Jan 22 2017 19:07
@webdevium , спасибо, почитал про симфони консоль, интересно. буду ковырять
Roman Sadoyan
@core01
Jan 22 2017 19:36
Люди добрые, помогите раскурить события в ларке. Необходимо после сохранения модели записывать значение в поле alias
Roman Sadoyan
@core01
Jan 22 2017 19:43
Насколько я понял, смысла городить мне свое событие нет. Необходимо всего лишь добавить слушатель на saved
Роман Сохарев
@greabock
Jan 22 2017 19:44
@core01 используй обсервер
ну или так
Roman Sadoyan
@core01
Jan 22 2017 19:45
Обсервер вроде подходит
только вот его ручками создавать?
Роман Сохарев
@greabock
Jan 22 2017 19:46
Ага
где-то в провайдере в методе boot
MyModel::observe(MyModelObserver::class);
Roman Sadoyan
@core01
Jan 22 2017 19:48
это в буте наверное
Роман Сохарев
@greabock
Jan 22 2017 19:49
Ну я к тому, что это может быть AppServiceProvider, или твой кастомный какой

Необходимо после сохранения модели записывать значение в поле alias
Необходимо всего лишь добавить слушатель на saved

Это ты в базу чтоль два раза собрался ходить?

может все-таки saving?
Roman Sadoyan
@core01
Jan 22 2017 19:53
Да, собрался 2 раза в базу
а как с saving сделать?
Вообще этот вопрос для меня не знаком. Я хотел бы сгенерить что-то вроде ЧПУ
И сделать чпу вида: id-name
А id - я получу только после сохранения, по другому никак.
Хотелось бы еще узнать, делаете ли вы ЧПУ (транслитерацией ли или переводом?).
Можно конечно не заморачиваться и выводить по ID
Но вот что-то заморочился
Anton Vorontsov
@symbios-zi
Jan 22 2017 20:06
@core01 перевод или транслитерация зависит от задач. Если сеошники не требуют транслитерацию, лучше перевод так как у тебя весь код - перевод. Я надеюсь.
Roman Sadoyan
@core01
Jan 22 2017 20:07
ага)
D
бывают такие кто делает такие модели/контроллеры: KontrollerPolzovateliya ?? :D
Anton Vorontsov
@symbios-zi
Jan 22 2017 20:08
@core01 $zakaz, $tovar
Roman Sadoyan
@core01
Jan 22 2017 20:08
мда..
не)
я не из этих
Перевод делать через яндекс?
Anton Vorontsov
@symbios-zi
Jan 22 2017 20:08
или $aaa, $v
Kirill Nesmeyanov
@SerafimArts
Jan 22 2017 20:08
слышь!
$v ещё норм
Anton Vorontsov
@symbios-zi
Jan 22 2017 20:09
@SerafimArts если в цикле то да
Roman Sadoyan
@core01
Jan 22 2017 20:09
while($xxx != $ccc){
if($ll == $kk){
echo "Что нибудь выводим");
die();
}
}
есть ли пакеты уже
в композере, обкатанные
для перевода?
Anton Vorontsov
@symbios-zi
Jan 22 2017 20:10
@core01 мы учим язык и используем переводчик гугла
Roman Sadoyan
@core01
Jan 22 2017 20:10
ну я к тому, что бы мне переводить данные введеные юзером
Anton Vorontsov
@symbios-zi
Jan 22 2017 20:11
@core01 я непонимаю о чем ты. я о названиях переменных, классов итд
Roman Sadoyan
@core01
Jan 22 2017 20:11
мне ЧПУ нужен
пользователь добавил статью - "Моя первая статья"
я хочу сгенерить урл для неё - id-name
Например: 23-my-first-article
Kirill Nesmeyanov
@SerafimArts
Jan 22 2017 20:12
@symbios-zi не только в цикле!
это мегакрутая переменная
Роман Сохарев
@greabock
Jan 22 2017 20:12
Route::get('posts/{id}-{alias}' , 'PostConttroller@index');
public function index($id, $alias, Post $post)
{
       $post = $post->where('id', $id)->where('alias')->firstOrFail();

       return view('blog.post',  compact('post'));
}
И не надо никаких наблюдателей
Anton Vorontsov
@symbios-zi
Jan 22 2017 20:12
@core01 сделай просто транслитерацию, имхо смысла нет переводить налету еще
хотя видел статью на эту тему
@greabock functuion
Роман Сохарев
@greabock
Jan 22 2017 20:13
да пофиг
Anton Vorontsov
@symbios-zi
Jan 22 2017 20:13
лентяй )
Роман Сохарев
@greabock
Jan 22 2017 20:18

Это тот вот самый случай

расскажите о том, что вы хотите сделать, а не о том как вы хотите это сделать

Если б сразу начал с того, что хочешь сделать, то я б сразу и сказал, что не надо никакие обсерверы/слушатели тут городить )
А как из далека начал-то главное XD - события же нужны )
ух...
Roman Sadoyan
@core01
Jan 22 2017 20:58
да раз повод получился почему бы и не освоить события)
indefpro
@indefpro
Jan 22 2017 21:00
Ребят, как делать
Как показывает
Roman Sadoyan
@core01
Jan 22 2017 21:00
берешь и делаешь)
indefpro
@indefpro
Jan 22 2017 21:01
Как выводить ошибки при валидации формы?
Roman Sadoyan
@core01
Jan 22 2017 21:02
у тебя форма ajax?
Подраздел документации посвящен этому, держи @indefpro https://laravel.com/docs/5.3/validation#quick-displaying-the-validation-errors
Roman
@fearrr
Jan 22 2017 22:00

Всем привет. Посоветуйте пожалуйста куда копать. Указываю валидацию на mimetypes в реквесте, перечисляю все.

'excel' =>
                 'mimetypes:application/vnd.ms-excel,'
                //тут еще несколько вариантов
                .'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',

приходит файлик application/vnd.ms-excel, его валидатор не пускает.

так тоже не прокатывает, файлы которые я экспортирую скриптом не пускает. Сохраненные MS Excel без проблем.
'excel' => 'mimes:xls,xlsx',
Roman Sadoyan
@core01
Jan 22 2017 22:22
так а ты посмотри что тебе приходит
@fearrr посмотри данные файла которые приходят
Roman
@fearrr
Jan 22 2017 22:32
@core01 с данными все впорядке
Roman Sadoyan
@core01
Jan 22 2017 22:37
'mimetypes:application/vnd.ms-excel,'
Здесь у тебя нет ошибки?
так и должно быть?
Roman
@fearrr
Jan 22 2017 22:39
нет вроде, типы через запятую перечисляются
первый тип я вообще взял из того же файла что импортирую, точь в точь
projct1
@projct1
Jan 22 2017 23:06
при указании в модели атрибута protected $dates = ['remind_at']; и при апдейте или инсерте, если это поле равно null и оно не обязательно, нормально если я получаю ошибку карбона?
InvalidArgumentException in Carbon.php line 582:
Data missing
даже если не пустая дата...
Dmitry
@DmitryChere
Jan 22 2017 23:10

всем привет

return $this->select(
            'companies.name', 'companies.quota',
            DB::raw('SUM(transfers.transferred) AS used_quota'))
            ->JoinUsers()
            ->JoinTransfers()
            ->where(??? > companies.quota'))
            ->groupBy('companies.id')
            ->orderBy('used_quota', 'DESC')
            ->get();

как в параметр where вставить значение used_quota вместо ???, если алиас нельзя передавать
подскажите пожалуйста

KarmaBot
@KarmaBot
Jan 22 2017 23:10
Будь как дома, @likeapimp, я ни в чем не откажу. Много мануалов, коль желаешь, покажу :)
projct1
@projct1
Jan 22 2017 23:12
@DmitryChere ->where('companies.quota', '<', $used_quota)
если конечно я верно понял
Dmitry
@DmitryChere
Jan 22 2017 23:15
@rorc used_quota это не переменная
projct1
@projct1
Jan 22 2017 23:15
@DmitryChere поле таблицы?
@DmitryChere ->whereRaw('used_quota > companies.quota')
Dmitry
@DmitryChere
Jan 22 2017 23:16
@rorc да, это алиас суммы значений поля transferred
SUM(transfers.transferred)
сейчас попробую whereRaw
projct1
@projct1
Jan 22 2017 23:17
@DmitryChere тогда по идеи having надо юзать
Dmitry
@DmitryChere
Jan 22 2017 23:17
@rorc с whereRaw нифига Unknown column 'used_quota' in 'where clause'
Kirill Nesmeyanov
@SerafimArts
Jan 22 2017 23:18
@DmitryChere а посмотри что оно тебе билдит в итоге
projct1
@projct1
Jan 22 2017 23:18
@DmitryChere попробуй вместо where ->having('used_quota', '>', 'companies.quota') или через Raw так же

@SerafimArts не подскажешь ли часом?)

при указании в модели атрибута protected $dates = ['remind_at']; и при апдейте или инсерте, если это поле равно null и оно не обязательно, нормально если я получаю ошибку карбона?

InvalidArgumentException in Carbon.php line 582:
Data missing
Dmitry
@DmitryChere
Jan 22 2017 23:19
@rorc ->havingRaw('SUM(transfers.transferred) < companies.quota') так вообще ничего не выбрало
Kirill Nesmeyanov
@SerafimArts
Jan 22 2017 23:20
@rorc не, давно с ларкой не работал =(
projct1
@projct1
Jan 22 2017 23:21
@DmitryChere ты пробовал через Eloquent строить запрос, а не через квери билдер?
Dmitry
@DmitryChere
Jan 22 2017 23:21
@rorc пробовал, но в текущей ситуации мне через орм не подходит
@rorc если подставляю вместо companies.quota просто число, например 1000, то работает
projct1
@projct1
Jan 22 2017 23:25
@DmitryChere ну мб как раз не существует мб записей то?
@DmitryChere посмотри какой запрос утебя в итоге получается через дебагбар
Dmitry
@DmitryChere
Jan 22 2017 23:28
@rorc да, все-таки это правильный вариант - havingRaw('SUM(transfers.transferred) > companies.quota'), я просто сразу поставил < вместо >
@rorc спасибо
KarmaBot
@KarmaBot
Jan 22 2017 23:28
Спасибо (+1) для @rorc принято! Текущая карма +16.
projct1
@projct1
Jan 22 2017 23:28
@DmitryChere :+1:
Roman
@fearrr
Jan 22 2017 23:38
ну что никто не сталкивался с проблемой валидации mime?
похожая проблема
Roman
@fearrr
Jan 22 2017 23:53
@DmitryChere да уже натыкался на это..
все нашел короче проблему, там все таки стоит тип application/vnd.ms-office office вместо excel, не сразу увидел, только после того как проверку написал..