Как я могу позвонить всем моих атрибутов моделей, включая те, которые определены как accessors/mutators?Laravel вызывает все атрибуты сразу
В настоящее время я создаю аксессоры/мутаторы типа;
public function setSatisfiedWithQualityOfCourseAttribute($value)
{
$this->attributes['group_answers']['satisfied_with_quality_of_course'] = $value;
}
public function getSatisfiedWithQualityOfCourseAttribute()
{
if (isset($this->group_answers['satisfied_with_quality_of_course'])) {
return $this->group_answers['satisfied_with_quality_of_course'];
}
return null;
}
И я могу назвать их из моего контроллера с чем-то вроде $response->satisfied_with_quality_of_course
, но мне нужно, чтобы иметь возможность вернуть все без явного вызова их один на один раз. Я могу это сделать?
Мне нужно назвать все «настоящие» атрибуты и все «аксессоры».
Если у меня нет уже выбранной модели, например '$ response = Response :: all();' - как я могу получить список всех ключей атрибутов? – mikelovelyuk
@ mike3875 Вы спросили, как назвать все атрибуты. Вы делаете это после загрузки определенной модели. Большинство ваших атрибутов будут поступать из столбцов базы данных, а это значит, что вам нужно сначала загружать записи базы данных! Почему в мире ваш контроллер будет работать с классом Model без записи? – jszobody
В этом случае я собираюсь экспортировать все в CSV. На данный момент я использую '\ Schema :: getColumnListing ('response')', но это не будет включать всех моих помощников – mikelovelyuk