это, кажется, проблема, которая появляется каждый раз в то время в пределах Laravel. Я писал CRUD-контроллер с целью его использования, однако после тестирования я получил InvalidArgumentException in FileViewFinder.php line 137: View [bookingcrud.index] not found
ошибка. Вот мой код:
routes.php:
Route::resource('bookingcrud', 'BookingsCrudController');
BookingsCrudController.php
use uasc\Http\Requests; use uasc\Http\Requests\CrudCreateRequest; use uasc\Http\Requests\CrudUpdateRequest; use uasc\Http\Controllers\Controller; use Auth; use DB; use Illuminate\Pagination\Paginator; use Illuminate\Http\Request; class BookingsCrudController extends Controller { public function index() { if (!Auth::check() || Auth::user()->authority < 1) { return redirect('/login'); } $raw = "select * from bookings"; $bookings = DB::select($raw); $paginatedBookings = new Paginator($bookings, 1); return view('bookingcrud.index')->with('bookings', $paginatedBookings); } }
И представление, расположенное в ~/laravel/resources/views/bookingcrud/index.blade.php
Независимо от того, что в этом представлении, будет ли его разметка из рабочего вида или просто слова «сыр», я всегда получаю:
InvalidArgumentException in FileViewFinder.php line 140: View [bookingcrud.index] not found.
Я тестировал один и тот же вид в известном рабочем контроллере и получил ту же ошибку, однако я протестировал известное рабочее представление на том же контроллере CRUD, и он сработал. Я также попытался изменить каталог представления и переименовать его, но я получу ту же ошибку, если «View [bookingcrud.index]» изменится соответствующим образом. Я убедился, что права на файл и каталоги были заполнены для тестирования.
Начиная с первого получения ошибки, я обновил до 5.1.1 из 5.0.26 (это версия, с которой возникла ошибка для меня) и выполнила обновление композитора. Кроме того, посмотрев на потоки с той же ошибкой, я также запустил конфигурацию artisan: clear
Я разрабатываю Windows 8.1 с Homestead 2.0.17, развернутым с помощью Virtual Box.
Любая помощь будет очень полезна в этот момент, когда он делает мою голову.
Пожалуйста, используйте терминал
homestead ssh > Press Enter vagrant@homestead cd /Path_of_Your_Project/ vagrant@homestead:~/Path_of_Your_project php artisan cache:clear vagrant@homestead:~/Path_of_Your_project php artisan config:cache
Извините за мой английский
Оказывается, я неправильно произнес лезвие, взял вторую пару глаз, чтобы на самом деле заметить это.
vagrant@homestead:~/Development/laravel$ ls resources/views/crud/booking/
crud.balde.php index.balde.php
Было определенно урок, чтобы всегда проверять мелкие вещи при отладке. Спасибо за помощь.
Для тех, у кого нет SSH Access, есть два способа решить эту проблему.
Если у вас нет плагина по умолчанию для пакета Laravel, сначала, просто удалите bootstrap / cache / config.php, чтобы решить файл,
ИЛИ
Если у вас есть плагин по умолчанию Laravel package, измените все связанные пути, указанные bootstrap / cache / config.php, на точный путь, который выделил проект laravel.
Помните, что Linux чувствителен к регистру!
У меня было что-то вроде этого:
return view('MyView', $data);
И он работал в моей среде (Mac OS), но не на сервере развертывания (Ubuntu)!