Size: a a a

2020 March 31

C

Combot in Laravel Pro
vhhooc has been banned! Reason: CAS ban.
источник

RK

Roman Kolosov in Laravel Pro
всем привет, вопрос по ларавел деплоеру, проблема в следующем я деплою проект для пользователя www-data но через пользователя user, и соответсвенно получаю permission denied, попробовал поставить конфиг writable_use_sudo = true но ошибка та же самая, знает кто как можно решить по простому?
источник

AP

Artem Poezdov in Laravel Pro
Ребят, когда мы связали две модели через промежуточную таблицу и belongsToMany

То  $первая_модель->вторая_модель()->create
Записывает в промежуточную таблицу или в таблицу второй модели?
источник

А

Артур in Laravel Pro
Artem Poezdov
Ребят, когда мы связали две модели через промежуточную таблицу и belongsToMany

То  $первая_модель->вторая_модель()->create
Записывает в промежуточную таблицу или в таблицу второй модели?
по логике, должен создать модель во второй и сделать запись связки в третьей
источник

НК

Николай Козлов... in Laravel Pro
я получаю коллекцию вида Illuminate\Pagination\LengthAwarePaginator
клиенту отправляю коллекцию ResourceCollection, он преобразует LengthAwarePaginator в коллекцию вида:
{
   "data": [...],
   "links": {},
   "meta": {}
}
но мне нужно предварительно кастомизировать коллекцию перед отправкой ресурса. не ломая при этом главную структуру необходимую для пагинации. как как это сделать?
источник

А

Артур in Laravel Pro
Roman Kolosov
всем привет, вопрос по ларавел деплоеру, проблема в следующем я деплою проект для пользователя www-data но через пользователя user, и соответсвенно получаю permission denied, попробовал поставить конфиг writable_use_sudo = true но ошибка та же самая, знает кто как можно решить по простому?
а что если сделать группу деплоера, дать права на запись и доступ к каталогу и добавить туда нужного юзверя?
источник

RK

Roman Kolosov in Laravel Pro
По сути я внёс пользователя в www-data но все равно не помогло
источник

s

sheykvit in Laravel Pro
Николай Козлов
я получаю коллекцию вида Illuminate\Pagination\LengthAwarePaginator
клиенту отправляю коллекцию ResourceCollection, он преобразует LengthAwarePaginator в коллекцию вида:
{
   "data": [...],
   "links": {},
   "meta": {}
}
но мне нужно предварительно кастомизировать коллекцию перед отправкой ресурса. не ломая при этом главную структуру необходимую для пагинации. как как это сделать?
А в чем проблема? Измени data
источник

НК

Николай Козлов... in Laravel Pro
sheykvit
А в чем проблема? Измени data
в методе toArray в ResourceCollection но получатся кастомизировать правильно. данные о пагинации теряются
источник

А

Артур in Laravel Pro
Николай Козлов
я получаю коллекцию вида Illuminate\Pagination\LengthAwarePaginator
клиенту отправляю коллекцию ResourceCollection, он преобразует LengthAwarePaginator в коллекцию вида:
{
   "data": [...],
   "links": {},
   "meta": {}
}
но мне нужно предварительно кастомизировать коллекцию перед отправкой ресурса. не ломая при этом главную структуру необходимую для пагинации. как как это сделать?
если ResourceCollection кастомная сделай трансформацию вручную
https://stackoverflow.com/questions/48094741/customising-laravel-5-5-api-resource-collection-pagination/49774240
источник

D

Dymon in Laravel Pro
Николай Козлов
в методе toArray в ResourceCollection но получатся кастомизировать правильно. данные о пагинации теряются
а что ты кастомизуешь и как?
источник

НК

Николай Козлов... in Laravel Pro
Dymon
а что ты кастомизуешь и как?
я хочу в полеченных данных в некоторых местах пройтись функций map
источник

D

Dymon in Laravel Pro
Николай Козлов
я хочу в полеченных данных в некоторых местах пройтись функций map
в toArray почти то же самое, что в map к тебе прийдет
источник

НК

Николай Козлов... in Laravel Pro
Dymon
в toArray почти то же самое, что в map к тебе прийдет
мне по $request пройтись map-ом методе toArray()?
источник

И

Игорь in Laravel Pro
p3v
Грузить в оригинале можно или установить пределы
Сохраняешь оригинал. При выводе в шаблоне проверяешь есть ли нужный формат. Если нет - ресайз и отдаешь пользователю.

Изображения по размерам сохраняешь в папках вида:
/140х150/1f/1f2ac4def.jpg

Удобно тем, что в любой момент можешь вернуть нужный размер. А если определенный формат больше не нужен - смело удаляешь всю папку с конкретными размерами.

Допустимые размеры нужно где-то указать, иначе положат сайт.
источник

D

Dymon in Laravel Pro
Николай Козлов
мне по $request пройтись map-ом методе toArray()?
я имел ввиду что в методе toArray делай то что ты в map хочешь сделать
источник

D

Dymon in Laravel Pro
Николай Козлов
мне по $request пройтись map-ом методе toArray()?
сори недопонял тебя сначала. Если хочешь поменть данные возми просто ресурс а не коллекцию. В нем настрой toArray  как тебе нужно, а в контроллере юзай UserResource::collection(User::all());
источник

НК

Николай Козлов... in Laravel Pro
Dymon
сори недопонял тебя сначала. Если хочешь поменть данные возми просто ресурс а не коллекцию. В нем настрой toArray  как тебе нужно, а в контроллере юзай UserResource::collection(User::all());
я полчаю данные вот таким способом:
$data = Vacancy::with([
   'cityList',
   'testTopic',
   'specialtyList',
   'icon'
])->filter($request)->orderBy('show', 'DESC')->paginate(10);

и по вашему совету попробовал вызвать:

return VacancyListResource::collection($data);

получаю ошибку: Undefined property: Illuminate\Database\Query\Builder::$map в  методе

public function toArray($request)
   {
       return $this->collection->map->toArray($request)->all();
   }
источник

D

Dymon in Laravel Pro
Николай Козлов
я полчаю данные вот таким способом:
$data = Vacancy::with([
   'cityList',
   'testTopic',
   'specialtyList',
   'icon'
])->filter($request)->orderBy('show', 'DESC')->paginate(10);

и по вашему совету попробовал вызвать:

return VacancyListResource::collection($data);

получаю ошибку: Undefined property: Illuminate\Database\Query\Builder::$map в  методе

public function toArray($request)
   {
       return $this->collection->map->toArray($request)->all();
   }
в  toArray можно считать $this как конкретную Vacancy из $data. Разве у Vacancy есть collection? почитай https://laravel.com/docs/6.x/eloquent-resources
источник

VL

Vladimir Lastovka in Laravel Pro
Я так понимаю что Eloquent - очень плохо?
Ну скажем "достал я гланды через зад", хотя мне то всего навсего нужно было получить агрегатные значения из связных таблиц
А сортировать и фильтровать это как? Как в примере ниже влепить сортировку и фильтрацию по summap и invoice_lines_count
Или же есть какой-то более нормальный способ добыть эти агрегатные значения?
Invoice::query()
   ->with('employee')
   ->withCount([
       'invoiceLines',
       'invoiceLines as summap' => function($query) {
           $query->select(\Illuminate\Support\Facades\DB::raw('SUM(summap)'));
       }
   ])
   ->orderBy('DATA', 'desc')
   ->take(2)
   ->toSql();
источник