所以,我是第一次接触Laravel,目前我正在关注techdiaries (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'));
}它是带有PHP7.1的Laravel 6
任何帮助都将不胜感激
谢谢
发布于 2019-10-15 02:21:22
你的问题是这句话:
return view('contacts.index', 'ContactController');view函数将一个字符串作为第一个参数,将一个数组作为第二个参数,以便将数据传递给视图。不确定传递控制器名称的字符串作为数据的目的是什么。
如果没有要发送到视图的数据,就不要使用第二个参数:
return view('contacts.index');Laravel 6.x Docs - Views - Passing Data to Views
本教程中的路由:
Route::get('/', function () {
return view('welcome');
});
Route::resource('contacts', 'ContactController');发布于 2019-10-15 02:22:56
Laravel使用此语法将路由链接到控制器方法
我想这就是你想要做的
Route::get('/', 'ContactController@index');顺便说一下,从Laravel 5.5开始...您还可以不使用控制器直接链接到视图并传递参数
Route::view('/', 'contacts.index', ['contacts' => App\Contact::all()]);查看View Routes希望这能有所帮助
https://stackoverflow.com/questions/58382118
复制相似问题