Игорь
Или я не правильно тебя понял
Daniil
а, это я хрен знает, не пользовался
Daniil
я в целом говорю про суть ошибки
Ivan
Привет, как правильно отфильтровать коллекцию eloquent? Мне нужно сравнить значения по getKey() элементов коллекции с другим элементом вне обратной функции
Ivan
$postId = $post->getKey(); $categoryPostsFiltered = $categoryPosts->filter(function($item, $postId) { return ($item->getKey() > $postId); })->all();
Ivan
этот код не работает, но если установить больше 2 например внутри функции - срабатывает.
Skeptic
$categoryPostsFiltered = $categoryPosts->filter(function($item) use ($postId) { return ($item->getKey() > $postId); })->all();
Ivan
огромное спс понял как пользоваться такими функциями
Skeptic
👍
Andrey
Всем привет. Кто-то делал авторизацию через ЕСИА? Не знаете, где личный кабинет разработчика, где можно создать AppID для oAuth/openID аутентификации/авторизации?
Andrey
Думал у них как в вк, все просто
Владимир
Да нефига подобное. Одно время только органы власти имели к апи доступ, так геморроя еще больше было
Andrey
мы для органов власти и делаем
Andrey
только что-то никто даже сконтачить не может) как будто не заинтересованы
Владимир
Раньше руководитель (мэр, начальник омс и т.д.) должен подписать особую форму и выслать. Но сейчас наверное все по-другому...
Игорь
Так, вопрос пиздец на 1000000
Игорь
У меня attmpts растет бешено
Игорь
Через что он ограничивается? —tries не помагает
🎄Victor
Ребят, вот допустим есть таблица с заказами и у заказов есть статус. И есть таблица статусов заказов (типа lookup table) Можно сделать ее так: id, name, какие_то_дополнительные_поля. Где Id - primary key. А можно сделать primary key name. В чем разница и какой подход лучше?
Andrey
другими словами "перечень статусов заказов может часто меняться?"
🎄Victor
После того как долго этот вопрос гуглил, считаю что enum зло) но конкретно в моем случае там не совсем статусы, это я для примера привел, и к этим “статусам” еще прицепляется дополнительная информация
Евгений
так делай по id, в чем проблема
Andrey
Слушай, я бы не парился и сделал автоинкрементируемый первичный ключ, но вот гуру считают иначе
Andrey
вот эта статья расставит все точки на и: https://habrahabr.ru/post/107834/
Andrey
если tl;dr то - суррогатные ключи это плохой дизайн базы данных
🎄Victor
ох, сколько статей столько и мнений, если честно)
🎄Victor
Щас поясню с чем столкнулся. У меня есть заказ, и у него есть тип: видео съемка, фото съемка. Тип съемки - таблица отдельная. Мне нужно в правилах валидации прописать: требуется указать количество фото если тип съемки - фото съемка. Если я храню все по id, то я не хочу и не могу делать так: photos_num: required_if:type_id,5 . Потому что айдишники могут сменится Вот поэтому подумал что по id в данном случае плохо
Andrey
ох, сколько статей столько и мнений, если честно)
слушай ну там речь об "отцах основателях" типа Edgar Codd-а
Andrey
они как бы разрабатывали эти концепции и к ним стоит прислушиваться
🎄Victor
Ну это холиварная тема… Мне щас не важна правильность, но в данном случае делать required_if по id, это совсем плохо
Andrey
еще кажется стоит прислушиваться к чувакам из ruhighload.com, так как они консультируют дофига крутых компаний
Andrey
а они против enum ниче особо не имеют
🎄Victor
а я даже миграцию сделать не смог из-за енама в свое время
Andrey
но если у вас конечно там много данных во второй таблице еще...
🎄Victor
столько гемора было)
Andrey
?
🎄Victor
а заказчики меняют поля каждую неделю, по понедельнкам)
🎄Victor
не помню в чем была проблема, но кажется нельзя было отредактировать таблицу в которой есть енам поле
🎄Victor
ошибку давал какой то пакет или типа того
🎄Victor
http://komlenic.com/244/8-reasons-why-mysqls-enum-data-type-is-evil/
🎄Victor
ну и тоже мнение
Andrey
понятно.
🎄Victor
но это все пофиг, просто я так понимаю с id я свою задачу в принципе не решу
🎄Victor
хм
Andrey
я так и не понял в чем задача
Andrey
расскажи больше
Andrey
валидация сложная?
🎄Victor
Ты создаешь заказ. Либо фото либо видео. Если создал фото, ты обязан передать количество фото Есть таблица order_types, в коотрой лежат типы заказа (id, name) и значения 1, photo; 2, video Как мне сделать валидацию? ‘photos_num’ => ‘required_if:order_type_id,1’? Проверять по айдишникам? )
🎄Victor
ну соотвественно фронт получает словарь типов заказов как id, name. Это если с суррогатными ключами
🎄Victor
точнее даже не id, name а id, title, где title - то что выводит фронт
🎄Victor
вот это я так понимаю косячная схема)
Andrey
понял тебя; не хочешь в таблице с типами хранить необходимое количество ?
Andrey
а сорри
Andrey
не так прочитал
🎄Victor
ага)
Andrey
ну логичный вариант делать bool значение "надо ли передавать количество".
Andrey
у тебя кроме фото и видео будет появляться потом еще что-то
🎄Victor
а куда bool вставлять? не совсем понял
Andrey
1,photo,true 2,video,false
Andrey
но это пздц)
🎄Victor
нене
Andrey
я бы использовал енум)
Skeptic
а чем не подходит table inheritance?
Skeptic
от него наследуется photo order
Skeptic
video order
🎄Victor
1) Енум не пойдет точно, потому что у типа заказа еще есть дополнительные поля 2) true/false не понял, с фронта приходит order_type_id скажем, и все. Как провалидировать?)
Andrey
а чем не подходит table inheritance?
это когда несколько моделей одну табл используют?
Skeptic
нет, есть базовый ордер, от него наследуются фото и видео
Skeptic
это позволит тебе каждый заказ развивать отдельно
🎄Victor
Я думаю просто вместо id сделать первичным ключем name, и тогда “required_if:order_type_name,video” и все окей
Skeptic
но по первости это кажется замороченно
Skeptic
но добавит гибкости, если разберешься
🎄Victor
Никогда не делал table inheritance, боюсь сложно будет щас, ну и нужды не вижу. Щас тогда всю систему перефигачивать а дедлайн как всегда близко( Ну хотя делал кажется давно, но думаю здесь это излишне, вроде
Skeptic
тогда делай, как привычнее)
🎄Victor
Я почему вопрос спросил по id vs name as primary key, мне кажется в этой ситуации как раз самое оно заюзать name как ключ
🎄Victor
ибо с id как то убого
🎄Victor
просто помню что какие то минусы были у этого метода