Юрий
Там весьма специфичный код
Юрий
Попробуй поставь и настроить
Pavel
я думал там тоже Lara ))
Pavel
тогда лучше блог сделаю на чистом Lara используя уроки. а с cms всегда сумеем познакомиться ) Спасибо Юрий.
Юрий
Октобер тоже лара, но код специфичный
Viacheslav
October вам не Lara :D
Viacheslav
я думал там тоже Lara ))
Alexey
привет, помогите разобраться с методом коллекций makeHidden ;)
Юрий
а в чем вопрос?
Alexey
мне нужно скрыть вывод полей привязанной модели. Код модели https://pastebin.com/SBjGHLFi . Вывод нужно организовать в json, но чтобы поля, отмечечнные красным, не выводились (данные для фронтенда). Вывожу так $cities = Cities::with('payments')->get()->makeHidden(['id', 'created_at', 'updated_at', 'payments.city_id'])->toJson(JSON_UNESCAPED_UNICODE); но в этом случае скрывается вывод только полей непосредственно модели Cities, а поля в payments не скрываются. Нигде не могу найти как правильно прописать поля в привязанной модели чтобы скрывались
Alexey
Ivan
Всем привет
Alexey
То, что получается сейчас
Ivan
вопрос следуюший
Ivan
Есть коллекция где например есть 3 елемента, мне надо реализовать чтоб каждый елемент был вложен в предыдущий. Может кто подскажет как такое реализовать?
Ivan
только без parent_id
Юрий
protected $hidden = array('password', 'token');
Alexey
пробовал, тот же эффект: в самой модели скрывает, в привязанной - нет. И мне скрывать нужно не постоянно, а только когда я для фронта выдаю данные, поэтому в модель их и не хочу фиксированно писать
Юрий
ну можно через геттеры/сеттеры сделать чтобы динамично.. но это видимо надо в дочерней модели делать
Viacheslav
Так у тебя че непосредственно модели вызываются в коде?(((
Viacheslav
Репозитории пусть поставляют тебе бизнес обьекты, в которых будет только то, что надо
Viacheslav
А с моделями будет работать только репозиторий
Alexey
не совсем понимаю...
Viacheslav
Ну там трансфрмерами, как вариант, если не хочешь писать много.
Viacheslav
Если хочешь оставить сильную связанность в приложеии)
Viacheslav
Ну или вообще жестко костыльни, приведи к массиву и ансетни)))
Alexey
я трансфомерами еще не пользовался, надо погуглить. Это дополнительно что-то ставить надо, не ларовская фича?
Viacheslav
Та хоть сам напиши класс с методом транформации, кто-то ставит фракталы или другие либы.
Viacheslav
Для простого тебе и ручками хватит.
Alexey
понял, спс. Тут внезапно назрел еще 1 вопрос: при выводе json в шаблон получаю картину на скрине. Я что-то не указал в энкодинге json, что он мне всю фигню экранирует таким образом?
Alexey
Юрий
toJson(JSON_UNESCAPED_UNICODE) - сам же указал с параметрами
Alexey
хм, это я для вывода кириллицы делал
Alexey
если без параметра все веселее будет, но так не подходит
Юрий
ну так тебе исходник читать или выводить на странице?
Viacheslav
Я когда в последний раз с кириллицей работал именно такую дрочь и выводил на сайт. Какая разница реально что там в исходнике)
Alexey
мне нужно данные вывести для фронта, на фронте их забрать, распарсить и использовать
Viacheslav
А если на меня нажать мой телефон вообще видно?
Alexey
а такую кашу ничего не парсит
Юрий
вы выведи эту "кашу"
Юрий
это обычный юникод
Viacheslav
А с бека не проще отдавать готовое? А не парсить на фронте?
Юрий
Viacheslav
Добавь полей
Viacheslav
Не надо выносить логику в представление.
Alexey
Не надо выносить логику в представление.
это да, но мне нужно дать данные для js, а между подобным выводом и ajax запросом с js на бэк разница в целый запрос и мне казалось, что если можно не делать ajax, то его лучше не делать
Alexey
у меня сейчас прям картина мира ломается
Alexey
js этот юникод не парсит - грит, мол, это не JSON
Alexey
Alexey
я тогда вообще не понимаю, как это сделать (
Юрий
а зачем его парсить? это просто json
Юрий
пользуйся им
Viacheslav
Так изначально ты же брал эти данные, какой еще один запрос? Изначально верни то, что надо.
Viacheslav
invariance
course.testdrivenlaravel.com
Юрий
course.testdrivenlaravel.com
Фыр фыр фыр
Юрий
А че, у лары 100% покрытия тестами?
Юрий
Тейлор как обычно херню несет
Viacheslav
Тейлор просто любит курсы продавать
Viacheslav
Ну тесты это вообще оч хорошо, но не всегда готовы за это платить.
Viacheslav
я имею ввиду заказчика
Юрий
Да просто если он якобы TDD придерживается - на ларе бы и показывал
Юрий
А то смешно)
Юрий
Сапожник без сапог
Alexey
Я все равно не могу понять: на фронте данные не видны. Как же мне их вывсети в таком случае? о_0
Юрий
Но обычно можно выключить самому в ожидаемые сроки время на тесты
Anonymous
Подскажите, пожалуйста, как можно получить id только что записаной записи?
Dmitriy
ребята подскажите пожалуйста , получаю вт таким вот образом записи TypeHouse::all()->toArray();
Dmitriy
если возможность как то получить в массив где ключами будут не айдишки, а другое поле ?
Viacheslav
Подскажите, пожалуйста, как можно получить id только что записаной записи?
если через create вернет результат. Также если создать модель и заполнить ее и сейвнуть в моделе тоже будет ( не путать с результатом функции сейв - она булевая)
Viacheslav
Viacheslav
если мне память не изменяет
Dmitriy
Не изменяет , это уже я спать хочу ересь несу
Dmitriy
Ну вобщем есть ли какой то метод который мне с обычного массива сделает ассоциативный по полю таблицы, надеюсь ты понял )
Viacheslav
Вроде только ручками.
Viacheslav
Кстати, если кому надо, когда создаешь через firstOrCreate и надо знать, была ли запись раньше или нет обратиться к wasRecentlyCreated результата. Недавно сталкивался.