【问题标题】:Laravel routes not working as expectedLaravel 路线未按预期工作
【发布时间】:2014-03-26 14:56:53
【问题描述】:

我刚刚创建了 UserController 并在 routes.php 文件中添加了一个路由:

Route::resource('users', 'UserController');

当我访问 laravel.dev/users 时,我希望看到用户索引视图,但我收到 404 错误:在此服务器上找不到请求的 URL /users。

这是运行时的输出:php artisan routes

+--------+------------------------+---------------+------------------------+----------------+---------------+
| Domain | URI                    | Name          | Action                 | Before Filters | After Filters |
+--------+------------------------+---------------+------------------------+----------------+---------------+
|        | GET users              | users.index   | UserController@index   |                |               |
|        | GET users/create       | users.create  | UserController@create  |                |               |
|        | POST users             | users.store   | UserController@store   |                |               |
|        | GET users/{users}      | users.show    | UserController@show    |                |               |
|        | GET users/{users}/edit | users.edit    | UserController@edit    |                |               |
|        | PUT users/{users}      | users.update  | UserController@update  |                |               |
|        | PATCH users/{users}    |               | UserController@update  |                |               |
|        | DELETE users/{users}   | users.destroy | UserController@destroy |                |               |
|        | GET /                  |               | Closure                |                |               |
+--------+------------------------+---------------+------------------------+----------------+---------------+

我做错了什么?

【问题讨论】:

  • 运行 php artisan routes 并查看生成的内容。另外,您是如何设置虚拟主机的?
  • 更新了原来的问题。
  • 如果您不介意,在原帖中包含更多信息可能会有用,例如用户控制器的内容、routes.php 文件、用户模型等。
  • 确认 htaccess a) 已启用且 b) 正常工作。

标签: php laravel laravel-4 laravel-routing


【解决方案1】:

如果您没有,您仍然需要在用户控制器中为该路由提供一个匹配方法(匹配“动作”):

public function index() {
  return "Hello world!";
}

【讨论】:

  • 我知道,它是在UserController.php文件中定义的。
  • @Severin index() 还是 getIndex()?
  • 公共函数索引() { $users = User::all();返回 View::make('users.index') ->with('users', $users); }
【解决方案2】:

我认为您的应用程序运行的地方肯定还有其他一些 routes.php 文件。你可以在你的应用程序中检查它吗?

【讨论】:

    【解决方案3】:

    假设您的UserController 没有错误,

    1) 确保url 属性在app/config/app.php 中配置正确

    2) 检查您的.htaccess 文件是否正常工作。

    3) 创建composer dump-autoload --optimize

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-02
      • 2018-04-27
      • 2020-04-26
      • 2021-05-06
      • 1970-01-01
      相关资源
      最近更新 更多