Я создал модель под названием Hangman. Внутри контроллера я вставляю строку в базу данных, такую какВызвать метод в модели в Laravel 5
$hangman = new Hangman();
$hangman->word = 'exampleWord';
$hangman->lives = 3;
$hangman->save();
Пока все хорошо.
У меня есть два вопроса:
1) Является ли это лучше всего держать вставки вещи в контроллере?
Я предполагаю, что НЕТ, так что я создал этот метод в модели, который я думаю, было бы чище звонить из контроллера
public function insert($word, $lives)
{
$hangman = new Hangman();
$hangman->word = $word;
$hangman->lives = $lives;
$hangman->save();
return $hangman;
}
Итак, мой вопрос (предполагая, что вопрос 1 НЕТ) является:
2) Как я могу назвать этот метод с контроллера?
Это не работает
\App\Hangman::insert('exampleword', 4);
Namespaces являются правильными.
Я знаю, что это очень простой, спасибо, ребята
Нет проблем, чтобы иметь этот код в контроллере. Функции модели инкапсулированы, поэтому вы можете иметь этот код в контроллере. Посмотрите на Laravel Guide: http://laravel.com/docs/5.1/eloquent#basic-inserts –
@ JavierNúñez Я знаю, что могу иметь его, просто я не хочу иметь 4 или 5 строк, если смогу имеют только одну строку с вызовом вставки. Thanks – godsaway