Size: a a a

2021 September 27

yh

youssef herrouch in Laravel Pro
How to  Change url referrer to look like comming from facebook using a redirect url
источник

yh

youssef herrouch in Laravel Pro
Как изменить URL-адрес реферера, чтобы он выглядел как исходящий из facebook, используя URL-адрес перенаправления
источник

АЗ

Алихан Закиров... in Laravel Pro
Реферер это просто заголовок. Браузер его вставляет автоматически
источник

АЗ

Алихан Закиров... in Laravel Pro
источник

А

Антон in Laravel Pro
Какой кисс, кисс жопу Тейлора? Камон, не надо бросаться терминологией, которая не оправдывает то говно, что делает Тейлор. Все эти солиды, киссы, драи и прочее не взаимоисключающие практики, а совместные: это значит, что кисс не говорит, что надо попрать SRP и Open/Close, напротив, почти всегда, когда у тебя получается соблюдать SRP и O/C, то у тебя получается делать и KISS. По твоей же логике получается, что любой джун, который шлепает весь код в одном файле или, прости господи, классе, соблюдает Kiss.
источник

А

Антон in Laravel Pro
источник

А

Антон in Laravel Pro
В целом, это нормальный подход, так действительно делают, и в некоторых случаях, например, когда у тебя доктрина и можно скрыть данные сущности на уровне языка, это единственный способ сгенерировать отчёт по сущности, не раскрывая ее данных: передал ей конвертер, а она положила в него данные. Тем более если она принимает интерфейс в качестве аргумента и возвращает интерфейс. Но все же конкретно для отчета такое не годится, обычно для этого данные читают простым sql. В случае лары тут ещё больше «но»: модели и так уже большие, чего они только ни умеют, а ещё если посмотреть на скрин Тейлора, то он в метод генератора передаёт `$this`. Вопрос: чего он этим добился? Так или иначе целая модель утекла в генератор.
источник

МК

Мирко Крокоп... in Laravel Pro
Приветствую, ребята!

Подскажите, пожалуйста, можно ли в Laravel из коробки использовать запросы к другим роутам от имени определенного пользователя?

Например, при написании тестов очень удобно бывает отправить запрос на API от авторизованного пользователя $user с помощью:

$this->actingAs($user);

А можно ли провернуть аналогичное не в тестах?

Один из моих контроллеров отправляет запрос на другой роут. Выглядит это так:

route('routeName', ['paramTest' => 1]);

Параметр paramTest успешно передается, но информация об авторизованном пользователе - нет.
При этом я хотел бы отправлять этот запрос от имени пользователя, а не гостя.

Подскажите, пожалуйста, Как это сделать?
источник

EG

Egor Gruzdev in Laravel Pro
источник

ПЛ

Павел Ланчев... in Laravel Pro
не дёргать роуты из контроллера, использовать сервисный слой для этого
источник

МК

Мирко Крокоп... in Laravel Pro
Спасибо за совет! Но, боюсь, доп пакеты для отправки одного запроса на свой же роут - оверхед для моего случая. Проще withHeader() заюзать и туда прописать 'bearer + token'
источник

МК

Мирко Крокоп... in Laravel Pro
А если дергать из сервисного слоя, то каким образом можно передать информацию о юзере?

Пока нашел только вариант с withHeaders и подстановкой туда 'bearer' . $token.
Что похоже на костыль)
источник

ПЛ

Павел Ланчев... in Laravel Pro
передавать юзера ему
костыль - это отправлять из контроллера запрос на свой же контроллер
источник

МК

Мирко Крокоп... in Laravel Pro
То есть, я правильно вас понял, что отдельного инструмента/метода для этого не существует и слеудет просто передать не один  параметра, а два, где второй будет $user?
источник

EG

Egor Gruzdev in Laravel Pro
$service->method($user);
источник

ПЛ

Павел Ланчев... in Laravel Pro
да, если методу нужен юзер - его стоит передать
но не нужно ходить по коду приложения по http, для это достаточно просто вызвать сервис с нужным методом

я эту мысль пытался передать
источник

МК

Мирко Крокоп... in Laravel Pro
Жаль, что не предусмотрено инструмента для такой вещи (

Было бы очень удобно иметь возможность юзать middleware для обраотки и запросов, иницируемых через метод
route();
по аналогии с actingAs() в тестах.

P.S. спасибо, что откликнулись!
источник

R

RC in Laravel Pro
Можно изпользуя curl (GuzzleHttp) дернуть свой роут, в заголовках токен.
Но это странный кейс, не могу представить когда нужно такое делать. Проще метод сервиса/модели вызвать, передав юзера.
источник

МК

Мирко Крокоп... in Laravel Pro
Да , у Curl/Guzzle богатые возможности. Думал, мб, можно в одну строку "из коробки".

Не хочется усложнять. Обойдусь пока костылем в одну строку.
источник

M

Maxx in Laravel Pro
я против любого вида экстремизма. если всё делать "по книжкам", то почему-то это сразу приводит к п. б) — т.е. перегруженному всякой лишней фигнёй коду. считаю это юношеским максимализмом, желанием "сразу сделать хорошо", хотя этого здесь и сейчас(!) не требуется.

если уж возводить что-либо в абсолют, то я бы голосовал за DRY. этот принцип никогда меня не подводил — за много лет в программировании наверное даже ни разу.
это значит, что если у тебя один код выполняется в одном только месте, то насрать на то, толстая у тебя модель или нет, есть абстракция или нет. ты знаешь как правильно, и пойдёшь по правильному пути, когда это понадобится, но не раннее.

в данном случае, если нужен только отчёт ПДФ, то, ради бога, делай как получается. понадобится потом эксель, ты знаешь как надо сделать правильно (ты читал умные книжки!), и только тогда начнёшь рефакторить, вводя уровни абстракции и т.п.
источник