Я включаю файл в laravel и бросаю мне следующую ошибку:
Method Illuminate\View\View::__toString() must not throw an exception
Я включил файл так:
@include('users.opentasks')
Я использую два варианта на одной странице, но если я их использую, это не имеет значения.
Я не совсем уверен, что это значит и как исправить этот бит новичка здесь. Надеюсь, кто-то может помочь.
Мой код выглядит следующим образом:
UserController.php
public function profile() { $status = "closed"; $data["projects"] = $projects = Auth::user()->projects()->where('status', '!=', $status) ->paginate(4); //$data["tasks"] = $tasks = Auth::user()->tasks->paginate(4); // $data["tasks_pages"] = $tasks->links(); //Comments pagination $data["projects_pages"] = $projects->links(); if(Request::ajax()) { $html = View::make('users.openprojects', $data)->render(); return Response::json(array('html' => $html)); // $html = View::make('users.opentasks', $data)->render(); // return Response::json(array('html' => $html)); } echo View::make('users.profile')->with('projects', $projects); } public function opentasks() { $user = User::with(array('tasks', 'tasks.status'))->find(Auth::user()->id); return View::make('users.opentasks')->with('user', $user); }
profile.blade.php
@extends("layout") @section("content") @include('users.openprojects') @include('users.opentasks') @stop
opentasks.blade.php
@foreach($user->tasks as $task) {{ $task->task_name }} {{ $task->task_brief}} @if(!is_null($task->status)) {{ $task->status->status_name }}<br/><br/><br/><br/> @endif @endforeach
Вы можете сделать это следующим образом:
if(Request::ajax()) { // --- this part of the code is odd $html = View::make('users.openprojects', $data)->render(); return Response::json(array('html' => $html)); // --- } else { $user = User::with(array('tasks', 'tasks.status'))->find(Auth::user()->id); $data = array( 'user' => $user, 'projects' => $projects ); return View::make('users.profile', $data); }