Php Laravel 7缺少所需参数
所以不管我做什么,我总是会犯这个错误。我没有得到这个错误的唯一方法是不调用控制器函数Php Laravel 7缺少所需参数,php,laravel,laravel-7,Php,Laravel,Laravel 7,所以不管我做什么,我总是会犯这个错误。我没有得到这个错误的唯一方法是不调用控制器函数 Route::get('/station/{id}/edit', [StationController::class, 'showStationEdit'])->name('editStation'); 在我的HTML中 href="{{ route('editStation', $stationId) }} 我也试着做一个 href="{{ route('editStation'
Route::get('/station/{id}/edit', [StationController::class, 'showStationEdit'])->name('editStation');
在我的HTML中
href="{{ route('editStation', $stationId) }}
我也试着做一个
href="{{ route('editStation', ['id' => $stationId] ) }}"
最后是函数本身
public function showStationEdit($id) {}
不管我做了什么改变,我都会犯这个错误吗
Missing required parameters for [Route: editStation] [URI: station/{id}/edit].
这是我正在呼叫的URL
127.0.0.1/station/1/edit
但是当我使用下面的代码时,它工作了..>
Route::get('/station/{id}/edit', function($id) {
//.. something
})->name('editStation');
您可以更改引用类型。 例如,您可以在ENV文件中描述您的网站名称,如下所示:
application_url = 'yourdomain.com or local ip http://127.0.0.1'
然后,您可以在html上校准url,如下所示:
href="{{env('application_url')}}/145/edit"
Route::get('/station/{id}/edit', [StationController::class, 'showStationEdit']);
你可以这样描述你的路线:
href="{{env('application_url')}}/145/edit"
Route::get('/station/{id}/edit', [StationController::class, 'showStationEdit']);
或者像这样直接使用href,如果您在本地:
href="http://127.0.0.1/1254/edit"
我希望这是您解决问题的答案。您可以更改推荐类型。 例如,您可以在ENV文件中描述您的网站名称,如下所示:
application_url = 'yourdomain.com or local ip http://127.0.0.1'
然后,您可以在html上校准url,如下所示:
href="{{env('application_url')}}/145/edit"
Route::get('/station/{id}/edit', [StationController::class, 'showStationEdit']);
你可以这样描述你的路线:
href="{{env('application_url')}}/145/edit"
Route::get('/station/{id}/edit', [StationController::class, 'showStationEdit']);
或者像这样直接使用href,如果您在本地:
href="http://127.0.0.1/1254/edit"
我希望这是您解决问题的答案。这里有一些变化,不确定是什么原因导致了问题,但这是有效的: 路线 控制器
class StationController extends Controller
{
public function showStationEdit($id) {
return view('edit', ['id' => $id]);
}
}
视图:edit.blade.php
The id is: {{ $id }}
HTML
这里有一些更改,不确定是什么导致了问题,但这是可行的: 路线 控制器
class StationController extends Controller
{
public function showStationEdit($id) {
return view('edit', ['id' => $id]);
}
}
视图:edit.blade.php
The id is: {{ $id }}
HTML
如果您像下面这样声明您的路由:get'/station/{id}/edit','StationController@showStationEdit'->命名为“编辑站”;?这只是一个简单的例子,因为我不知道PHP可调用语法可以在laravel 7 rouesNope上使用:仍然会发生相同的错误当您收到错误时,您传递给route helper的$stationId的值是多少?如果您像下面这样声明您的路由::get'/station/{id}/edit', 'StationController@showStationEdit'->命名为“编辑站”;?这只是一个简单的例子,因为我不知道PHP可调用语法可以在laravel 7 rouesNope上使用:仍然会发生相同的错误。当您收到错误时,传递给route helper的$stationId的值是多少?在配置文件之外使用env函数。使用config:cache缓存配置后,.env文件将不会加载,对env函数的所有调用都将返回null。我对缓存env文件的知识不太了解,但我通常使用它,并且我没有遇到类似的问题。它的加载非常正常,但当我在我的环境文件中更改某些内容时,我应该清除缓存。你能解释一下你的建议吗?顺便说一句,非常感谢。你想知道更多吗?我提供的链接已经解释得很好了。在配置文件之外使用env函数。使用config:cache缓存配置后,.env文件将不会加载,对env函数的所有调用都将返回null。我对缓存env文件的知识不太了解,但我通常使用它,并且我没有遇到类似的问题。它的加载非常正常,但当我在我的环境文件中更改某些内容时,我应该清除缓存。你能解释一下你的建议吗?顺便说一句,非常感谢。你想知道更多吗?我提供的链接已经解释得很好了。