Миша
hasMany, нет?
получу модели связок UserHasRole а не Role
Андрей
Если auth, то, не roles разве?
Миша
А, у Вас не auth?
я сейчас говорю не о готовом варианте пакета, который это реализует, а о своем велосипеде
Андрей
Throw
Миша
есть пакет он через morphToMany возвращает как надо
Миша
но там есть model_type мне он нафиг не нужен
Андрей
Андрей
но там есть model_type мне он нафиг не нужен
Есть статья все об отношениях, кажется, там прямой ответ на вопрос Ваш
Миша
дока? я сейчас в ней ничего не получается
R
Таблица связок user_id role_id Есть таблица ролей, допустим их 6. Есть таблица юзеров у которых может быть много ролей. Выше показнная таблица связывает роли с юзерами. Но как в модели User поставить отношение, которое сразу получает коллекцию моделей Role?
привет всем ! Я реализововывал проверку роли пользователя через middleware public function handle($request, Closure $next) <pre>{ if(Auth::user()){ $my_array = Auth::user()->array_roles(Auth::user()); if (in_array('Admin',$my_array)) { return $next($request); }else{ return redirect('home'); } } else return redirect('login'); }</pre>
Миша
Спасибо) Но мне это не подходит по личным причинам)
R
Почему ? а как хочешь решить ?
Dmitry
«Должно» в смысле могут?
Должно обезопасить. Т.е. там mime проверяются и размеры, ну и наверное расширение + настроенный сервер не выполнит как php скрипт файл с другим расширением,
Anonymous
понял спасибо)
Миша
по теме нету такой связи в ларе(
Миша
отойдем от ролей это всех путает
Dmitry
любая связь вернет тебе коллекцию моделей связанных
Андрей
а в чем проблема? $user->roles вернет тебе этот массив
Проблема в том, что из коробки ему не подходит
Миша
есть Player, есть PlayerHasTalent, есть Talent
Dmitry
я прочитал и не понял почему
Dmitry
PlayerHasTalent - это то зачем?
Миша
потому что типы талантов их штук 9
Миша
мне нужно показать у каких игроков какие таланты есть
Dmitry
$player->talents - вот тебе даст набор Talent
Андрей
Парни, ну про обновление знает кто? Можно 5.3 сразу 5.5?
Андрей
Важно!)))
Dmitry
оно не обновлят, а просто новое ставится
Dmitry
Парни, ну про обновление знает кто? Можно 5.3 сразу 5.5?
да и вообще можно параллельно поставить
Андрей
То есть не нужно через промежуточные?
Dmitry
нет
Андрей
Dmitry
у меня на сервере стоят от 5,2 до 7,2. можно любую выбрать
Андрей
Спасибо!
Андрей
Стоп
Андрей
Я о ларе
Nurik
Ребят подскажите. как можно сделать update JSON поля. Есть какой-нибудь updateRaw ? Или могу ли я сделать что-то типа такого: ->update('fields'=>DB::raw("JSON_SET(fields,'$.ru.someAttribute','value')")) ? P.S. Родной функционал для работы с jSON полями с Mariadb не работает. Поэтому и спрашиваю
Андрей
Проект на 5.3, можно ли до 5.5 без 5.4?
Dmitry
Я о ларе
😄 тоже можно. но надо читать что изменить надо. там наверное дофига будет, + изменения в пакетах
Nurik
потому что там json нет
По сути JSON который в mysql тоже самое что и text у них отличий нет. Индексов нет в любом случае.
Dmitry
Nurik
отличия есть, в json можно обращаться и искать по параметрам
Поменяй тип на текст и о чудо, все твои JSON_* будут тоже работать.
Dmitry
Вот-вот... причем об разнице с 5.4... скорее всего, нельзя
обновится ты можешь на любую версию. в этом нет разницы. просто код в vendor у тебя изменится. Остальное ручками править
Dmitry
мне нужно показать у каких игроков какие таланты есть
ну так что, почему тебе этот вариант не подходит?
Dmitry
Поменяй тип на текст и о чудо, все твои JSON_* будут тоже работать.
нафиг тебе это вообще надо? работай с набором как с массивом, а при сохранении используй касты
Nurik
нафиг тебе это вообще надо? работай с набором как с массивом, а при сохранении используй касты
МНе нужно булк апдейт сделать, не буду же я каждую запись доставать чтобы её содержимое апдейтнуть.
Nurik
Может и не надо. Но уже поздно что-то менять.
Dmitry
но в любом случае можно юзать raw запросы
Nurik
Ну в общем как можно в методе update заюзать JSON_SET ?
Nurik
Или QueryBuilder не умеет такого и лучше сразу писать голый SQL?
Artem
Ребят, реально передать в API resource переменную( скидку) которую в коллекции буду вычитать из цены?
Влад
Ребят, нужен человек из москвы, на пару проектов, кому интересно - в личку!
Андрей
Хотя с апдейтом, не факт
Nurik
https://laravel.ru/posts/674
Там же ниже как раз написано что с Mariadb оно не пашет. Понятно по каким причинам.
Dmitry
какая у тебя версия?
Dmitry
в 10,3 вроде подвезли
Artem
а в чем проблема?
Ну там же только коллекцию моделей передать можно
Artem
а в чем проблема?
UserResource::collection(User::all());
Nurik
в 10,3 вроде подвезли
Она еще в бете, релиза еще не было.
Миша
ну так что, почему тебе этот вариант не подходит?
Не представляю, как он будет работать) Ведь такого релейшона нет. Но я устал пытаться донести свою мысль. Кушать хочу)
Dmitry
Не представляю, как он будет работать) Ведь такого релейшона нет. Но я устал пытаться донести свою мысль. Кушать хочу)
какого нет? у тебя есть player есть talent они связаны, и и тебе надо получить для player talent Это самая простая ситуация. Или я что то упустил?
Миша
как и в Player нету связи с Talent, единственная связь это промежуточная таблица
Dmitry
да между ними есть playerHasTalent, в самом talent связи с Player нету
ага, а какие у тебя там данные? player_id talent_id ?
Dmitry
Ну там же только коллекцию моделей передать можно
самое простое добавить метод в модель
Dmitry
да
ну и нафиг она тебе нужна?