Anton
ребят, есть объект User. Как из него получить новый объект но например с двумя полями вместо 10?
То есть тебе хочется склонировать и убрать какие то свойства?
Artem
ну я отправляю в Event объект юзера, а на выходе хочу получить не со всеми свойствами
Ар
что нет?
Artem
не знаю
Ар
надо сделать DTO
Artem
сложно
Ар
https://ru.wikipedia.org/wiki/DTO
Artem
Как сделать position у строк в бд? например в админке у каждой строки есть кнопки вверх и вних. При нажатии вверх position -1 становится. А у других тоже как то надо?
Dmitry
Как сделать position у строк в бд? например в админке у каждой строки есть кнопки вверх и вних. При нажатии вверх position -1 становится. А у других тоже как то надо?
если смещение на одно позицию, то берешь новую позицию, находишь какой элемент на этой позиции, прибавляешь или уменьшаешь его позицию. Потом элементу который перетаскивают задаешь навую позицию
Artem
берешь новую позицию, находишь какой элемент на этой позиции, прибавляешь или уменьшаешь его позицию
Dmitry
Если нескольно то меняешь у всех внутри отрезка Новая позиция - Старая позиция
Artem
а у других?)
Artem
так он же может встать на чужую позицию
Artem
читай внимательнее
ну ты написал только у двух менять
Dmitry
ну ты написал только у двух менять
а чуть ниже, что я написал :)
SarcasmIO
ты же не создал creator'a
Artem
Потом элементу который перетаскивают задаешь навую позицию
Dmitry
Если нескольно то меняешь у всех внутри отрезка Новая позиция - Старая позиция
Artem
и как это сделать?
SarcasmIO
factory(App\Article::class, 50)->create()->each(function ($u) { $u->creator()->save(factory(App\User::class)->make()); });
SarcasmIO
сохрани через релейшен
Dmitry
и как это сделать?
выборку делай where if new > old ? position > old && position < new : position > new && position < old и у них у всех смещай позицию на 1
Artem
долгая операция
Dmitry
долгая операция
ты меняешь позицию у 100000000 элементов?
Artem
у 50 например
Artem
при смещении одного придется у всех менять
Dmitry
вообще копейки
Artem
не очень копейки
Dmitry
не у всех, а у элементов из отрезка
Dmitry
😄
Artem
как это не у всех
Artem
секунду
Dmitry
я же написал в промежутке от новой позиции до старой
Dmitry
причем 2 запросами можно сделать
Artem
а только у двух менять придется
Artem
у меня же либо вверх либо вниз
Artem
на 1
Dmitry
в этом случае да
Dmitry
но в целом это оч не удобная реализация для пользователя
Artem
почему?
Artem
я другого варианта не вижу отсортировать как надо
Dmitry
потому что если тебе надо поменять с позиции 50 до 12. Замучаешься тыкать
Artem
ну хотя не 50
Artem
штук 10
Artem
я перепутал кейс
Dmitry
я перетаскивание делаю. Но самый удобный вариант это просто номер позиции задать руками в инпуте
Artem
какое перетаскивание?
Artem
через js?
Dmitry
ага
Dmitry
через sortable
Сергей
я сделал так, если новый элемент становится на место старого, то пересчет всех и присваивание им новый порядок, а если новое место не занято то оставить как есть и перемещаемому задать тот номер который требуется
Сергей
если сортировка была 2 10 25 33 65, у меня ввод инпутом есть
Сергей
как бы визуально 25 номер это третий, но 65 если указать 3 то он будет третий по очереди, но не занял место 25
Сергей
ну типа того
Artem
если сортировка была 2 10 25 33 65, у меня ввод инпутом есть
у вас админы которые за услугу Администрирование серверов сегодня работают?
Artem
Должны)
должно были софт поставить, вчера отвечали, сегодня чет нет
Artem
ааа
Artem
странно
Artem
почему же
Сергей
У меня же там несколько бейджей) это конфа просто там была) я частый гость у них)
Artem
))
Сергей
))
Ладно, там не видно другой бейдж)
Сергей
Над сменить фотку)
Сергей
))
ты к стати vscale юзаешь или сервер арендуешь?
Сергей
Как при создании новой модели через api сделать так чтобы в форме можно было загрузить сразу картинку и её увидеть но при этом не сохранять форму(модель) еще, чтобы если нажать отмена то и файл удалился тоже? Логику можете подсказать? подразумеваю что через firstOrNew?
Сергей
Это вообще js
Ресайзы и все прочие дела через js делается тоже?
Dmitry
Да
Andy
народ, как сделать такое с eloquent? $role = $request->input('role'); $users = DB::table('users') ->when($role, function ($query) use ($role) { return $query->where('role_id', $role); }) ->get();
Dmitry
Там внутри тот же квери билдер