Как вернуть модель Eloquent в браузер как JSON? В чем разница между этими двумя способами ниже? Оба, похоже, работают.
# 1:
return Response::json($user->toArray()); # 2:
 return $user->toJson(); 
       
		Фактические отправленные данные одинаковы, однако …
  # 1 Отправляет Content-Type:application/json в браузер 
  # 2 Отправляет Content-Type:text/html 
# 1 правильнее, но это зависит от вашего Javascript, см.: Каков правильный тип содержимого JSON?
Однако гораздо проще просто вернуть модель. Он автоматически возвращается как JSON, а Content-Type установлен правильно:
 return $model; 
В # 1 вы сначала конвертируете свой Eloquent в массив, а затем конвертируете его в JSON, что кажется немного избыточным.
Имея это в виду, я бы пошел с № 2, если вы возвращаете JSON вызывающему абоненту.
Также обратите внимание, что в L4 всякий раз, когда модель Eloquent добавляется в строку, она автоматически преобразуется в JSON. Следовательно, вы можете сделать, как в этом примере, документацию, чтобы возвращать данные JSON непосредственно с вашего маршрута:
 Route::get('users', function() { return User::all(); }); 
Для получения дополнительной информации см. http://four.laravel.com/docs/eloquent#converting-to-arrays-or-json
  Response::json($someArray) – это общий способ возврата данных JSON. 
  return $model->toJson() относится к возврату модели как JSON.  Это был бы мой предпочтительный подход при работе с моделью Eloquent.