即使已定义路径,我仍收到此错误Route [blood-camp] not defined. (View: C:\wamp64\www\blood-donation\resources\views\layouts\app.blade.php)
web.php文件
`Route::get('/', [App\Http\Controllers\HomeController::class, 'index'])->name('home.root');
Auth::routes();
Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');
Route::get('/user', [App\Http\Controllers\UserController::class, 'index'])->name('user');
Route::resource('blood-camp', BloodCampController::class);
Route::resource('donor', DonorController::class);
Route::resource('camp-schedule', CampScheduleController::class);`
app.blade.php
<li class="nav-item dropdown">
<a class="nav-link" href="{{ route('blood-camp') }}" role="button" >
{{ __('Camps') }}
</a>
</li>
控制器类
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class BloodCampController extends Controller
{
public function __construct()
{
$this->middleware('auth');
}
public function index()
{
return view('blood_camp.index', ['camps' => DB::table('blood_camps')->orderBy('name', 'ASC')->paginate(10)]);
}
//all the other resources are there...
}
路由:列表
没有重复的路由
我已经尝试了所有建议的方法,包括改变路径名,缓存清除,私人窗口,重新启动服务器,但我仍然得到这个错误,没有办法去进一步的发展。
第一次发生是在我添加新的路线camp的时候,我把名字改成了blood-camp,但是运气不好,现在它又抛出了其他路线的异常。有人能解释一下我做错了什么吗?
2条答案
按热度按时间n6lpvg4x1#
正如
route:list
显示的结果,您没有别名为blood-camp
的路由。您的别名是
blood-camp.index
、blood-camp.store
....要生成资源列表的链接,请用途:
按路径/url
或者用别名
eqzww0vc2#
我已经解决了
问题是
Route::resource()
为资源生成命名路径,例如'blood-camp.index,blood-camp.store'于是我明确地补充说,命名路线如下;
并运行优化器,现在它正在使用路由(“blood-camp”)