Gan*_*nly 5 php laravel laravel-routing laravel-5
我uuualy使用Laravel 4,现在我想学习Laravel 5
命名控制器路由有问题:
我有这样的路线:
Route::get('/', [
'uses' => 'HomeController@viewHome',
'as' => 'home'
]);
Route::get('/events', [
'uses' => 'EventController@viewEvent',
'as' => 'event'
]);
Run Code Online (Sandbox Code Playgroud)
当我作为'home'(localhost/laravel /)运行路线时,它的工作非常完美
但是当我将路线作为'event'(localhost/laravel/events)运行时:找不到对象!

我已经确保通过交换它运行的viewEvent方法如下:
Route::get('/', [
'uses' => 'EventController@viewEvent',
'as' => 'home'
]);
Route::get('/events', [
'uses' => 'HomeController@viewHome',
'as' => 'event'
]);
Run Code Online (Sandbox Code Playgroud)
我可以运行viewEvent,但我无法运行viewHome
我的代码有什么问题吗?
========================已解决========================= ====
帮助@DamienPirzy并且我意识到当我禁用/ public /文件夹时我想我必须将.htaccess输出到主文件夹:)
谢谢所有快速响应:)问题解决了
将此 htaccess 放入公用文件夹。确保你有 apache mod 重写工作。
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)
小智 2
我在routes.php中看到
Route::get('/events', [
'uses' => 'EventController@viewEvent',
'as' => 'event'
]);
Run Code Online (Sandbox Code Playgroud)
但你跑
localhost/laravel/event
Run Code Online (Sandbox Code Playgroud)
应该运行
localhost/laravel/events
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10467 次 |
| 最近记录: |