Size: a a a

2019 December 02

f

freecod in Laravel Pro
Dymon
создай BaseModel  и наследуйся. А танцы в контейнере норм?
ну танцы в контейнере хоть типа laravel-way 😆
источник

f

freecod in Laravel Pro
оке, спасибо всем, понял какие есть варианты, примерюсь
источник

D

Dymon in Laravel Pro
freecod
ну танцы в контейнере хоть типа laravel-way 😆
источник

f

freecod in Laravel Pro
да, уже смотрел, но тут все равно изначальный пакет нужно писать с учетом того что его будут извне юзать - настраивать коннекшены в провадере, и похоже каждую модель в нем инициализировать что бы параметрами пакета установить
источник

i

invariance in Laravel Pro
freecod
да, уже смотрел, но тут все равно изначальный пакет нужно писать с учетом того что его будут извне юзать - настраивать коннекшены в провадере, и похоже каждую модель в нем инициализировать что бы параметрами пакета установить
1) Создаешь в пакете BaseModel
2) В BaseModel пишешь чет типа:
public function __construct(array $attributes = [])
{
   parent::__construct($attributes);
   $this->setConnection(config('package_connection', $this->getConnection()));
}

3) Наследуешь пакетные модели от BaseModel
4) Юзаешь пакет в своем проекте
5) Устанавливаешь нужный package_connection в своём проекте, пакет его подтянет и установит для своих моделей
источник

i

invariance in Laravel Pro
Хотя там по-моему как-то конфиг надо прокинуть в пакет, в доке точно есть это
источник

i

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

i

invariance in Laravel Pro
Да, BaseModel само собой наследуешь от стандартной Model
источник

TC

Taras Chernata in Laravel Pro
Здравствуйте ребята. Есть вопрос по правильному алгоритму как давать доступ к скачиванию файлов только определенным пользователям. Как запретить скачивать файлы тем пользователям, которые не имеют подписки для скачивания??

Для хранения файлов я использую S3
источник

АЗ

Алихан Закиров... in Laravel Pro
1. Делаешь эндпоинт для скачивания, проверяешь можно ли скачать и отдаешь
2. Использовать x-accel-redirect (рекомендую)
источник

АЗ

Алихан Закиров... in Laravel Pro
Во втором случае файлы будет отдавать nginx, который справляется с этой задачей на ура
источник

f

freecod in Laravel Pro
Алихан Закиров
Напрямую засетить не получится это не статичное свойство, но можно через boot, да
а это как, кстати? Нашел только вариант с setConnectionResolver, но он не работает только в рамках провайдера, дальше резолвер подменяется на дефолтный
источник

АЗ

Алихан Закиров... in Laravel Pro
А стоп. У тебя же s3, тогда только первый вариант
источник

АЗ

Алихан Закиров... in Laravel Pro
freecod
а это как, кстати? Нашел только вариант с setConnectionResolver, но он не работает только в рамках провайдера, дальше резолвер подменяется на дефолтный
Я в этом моменте кажется тебя обманул. Мне казалось в boot метод можно скормить лямбду, но это не так
источник

АЗ

Алихан Закиров... in Laravel Pro
Правильнее как тут сказали завести конфиг
источник

АЗ

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

АЗ

Алихан Закиров... in Laravel Pro
А в проекте подсунуть в него значение
источник

f

freecod in Laravel Pro
неохота трогать тот пакет, хотелось извне все подменить...
источник

АЗ

Алихан Закиров... in Laravel Pro
Алихан Закиров
А стоп. У тебя же s3, тогда только первый вариант
Хотяяя
При большом желании можно изъебнуться и сконфигурить nginx под s3
источник

АЗ

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