2016-02-04 4 views
0

Я уже давно работаю над API, у которого есть своего рода «мягкая» проверка api, поэтому я могу легче использовать Backbone на лицевой стороне. В принципе, руководитель проекта всегда должен был только проверять и обновлять возвращенные атрибуты, о которых мы заботимся. На бэкэнд я использую заполняемый массив модели, чтобы ограничить это после проверки входного массива. Таким образом, нам не нужно раздражать людей, когда они случайно отправляют обратно данные модели, которые мы не позволяем им касаться, поскольку документы четко указывают, что заполняется. Кажется, что людям нравится работать с API.Laravel 4.2 принудительное назначение массы на createOrUpdate и аналогичные методы?

То, с чем мы сталкиваемся, является проблемой, потому что мы хотим использовать такие вещи, как «createOrUpdate» для нашего бэкэнд-материала, который автоматически создает или обновляет модели. В основном мы заканчиваем тем, что добавляем вещи к заполнению, которые противоречат нашему пользователю, обратившись к проверке ввода. Трудясь вокруг документов, я наткнулся на «forceFill» и другие различные методы «силы», но заметил, что они отсутствуют из более магических методов, таких как «createOrUpdate». Похоже, что они должны быть методами или, по крайней мере, булевыми флагами, которые могут быть переданы методам принудительной, и, возможно, эти параметры встроены в Laravel 5+?

Прежде чем я начну писать свои собственные методы в базе, я просто хотел спросить, если это уже встроено в 4.2, и я просто пропустил его? Я также хотел создать этот поток, поскольку он может быть информативным для людей, которые все еще путаются в том, как работает массовое задание Ларавеля.

Если у меня нет обратной связи, я, возможно, просто удалю ее.

+0

http://stackoverflow.com/questions/29519127/laravel-create-or-update-related-model –

ответ

1

Model::unguard(); является добавлено в 5.1 https://laravel.com/docs/5.1/seeding доступно в 4.2.

Вы просто назвать его, прежде чем создавать объект, а затем вы можете заполнить все поля с помощью createOrUpdate(), firstOrNew(), create() и т.д.

коррекции, здесь в L4.2 API: https://laravel.com/api/4.2/Illuminate/Database/Eloquent/Model.html#method_unguard

см. также: Model::reguard()

+0

Когда я начал писать эти пользовательские методы, я заметил эти методы. Поскольку у меня возникли проблемы с их работой, я отдам их. – Throttlehead

+0

Работал как шарм. Еще раз спасибо! – Throttlehead