[英]Laravel array_merge(): Argument #2 is not an array Error
所以,我是 Laravel 的新手,我目前正在学习技术日记的教程( https://www.techiediaries.com/php-laravel-crud-mysql-tutorial/ )
我真的没有任何使用 Laravel 或任何框架的经验,但我在 PHP 方面有经验,这是 Laravel 的第一次尝试。
我收到以下消息:
ErrorException array_merge():参数 #2 不是数组
当我查看http://localhost/laravel-first-crud-app/public/
Route::get('/', function () {
return view('contacts.index', 'ContactController');
//return 'Hello';
});
Route::resource('contacts', 'ContactController');
//Route::apiResource('contacts', 'ContactController'); //Not sure if this should be here or not
在 routes/web.php 但我在教程中看不到如何访问我创建的页面
不确定我的contactController.php文件是否有帮助:
public function index()
{
$contacts = Contact::all();
return view('contacts.index', compact('contacts'));
}
它是 Laravel 6 和 PHP7.1
任何帮助将非常感激
谢谢
您的问题是以下声明:
return view('contacts.index', 'ContactController');
view
function 将字符串作为第一个参数,将数组作为第二个参数,以便将数据传递给视图。 不确定您将 Controller 名称的字符串作为数据传递的意图是什么。
如果没有数据要发送到视图,请不要使用第二个参数:
return view('contacts.index');
Laravel 6.x 文档 - 视图 - 将数据传递给视图
教程中的路线:
Route::get('/', function () {
return view('welcome');
});
Route::resource('contacts', 'ContactController');
Laravel 使用此语法将路由链接到 controller 方法
我想这就是你想要做的
Route::get('/', 'ContactController@index');
顺便说一句,由于 Laravel 5.5... 您也可以直接链接到没有 controller 的视图并传递参数
Route::view('/', 'contacts.index', ['contacts' => App\Contact::all()]);
查看查看路线希望这会有所帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.