Контроллер Laravel, переходим к созданию и обновлению модели?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Контроллер Laravel, переходим к созданию и обновлению модели?

Сообщение Anonymous »

Мой вопрос о том, как разделить этот код. У меня есть форма регистрации, и ее функция сохранения выглядит следующим образом:

Код: Выделить всё

public function store(EntityRequestCreate $request)
{
$geoloc = new Geoloc;
$geoloc->lat = $request->input('lat');
$geoloc->lng = $request->input('lng');
$geoloc->slug = $request->input('name');
$geoloc->save();

$user_id = Auth::id();
$entity = new Entity;
$entity->name = $request->input('name');
$entity->type = $request->input('type');
$entity->email = $request->input('email');
$entity->tags = $request->input('tags');
$entity->_geoloc()->associate($geoloc);
$entity->save();

$entity_id = $entity->id;

$address = new Address;
$address->building_name = $request->input('building_name');
$address->address = $request->input('address');
$address->town = $request->input('town');
$address->postcode = $request->input('postcode');
$address->telephone = $request->input('telephone');
$address->entity_id = $entity_id;
$address->save();

$role = User::find($user_id);
$role->role = "2";
$role->save();

DB::table('entity_user')->insert(array('entity_id' =>  $entity_id, 'user_id' => $user_id));

$result = $geoloc->save();
$result2 = $entity->save();
$result3 = $address->save();
$result4 = $role->save();

if ($result && $result2 && $result3 && $result4) {
$data = $entity_id;
}
else {
$data = 'error';
}

return redirect('profile/entity');
}
Как видите, у него есть специальный запрос, и он сохраняется в трех моделях, поэтому мой код контроллера слишком длинный (имеет много других функций и т. д.). Вместо этого я хочу переместить этот код в модель, поскольку в моей модели пока определены только отношения. Однако я точно не знаю, как вызвать модель из контроллера, нужно ли мне ее вызывать или она сделает это автоматически? Есть еще идеи, как разделить код?

Подробнее здесь: https://stackoverflow.com/questions/454 ... g-to-model
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»