Laravel URL 架构

Laravel URL Architecture

我正在使用 Laravel 5 构建一个社交网络应用程序,我对 URL 的结构有点困惑。

使用另一个成员以前的 Stack Overflow post,我已经掌握了基础知识(分析、帐户等)。这是我目前所拥有的:

http://myapp.com/account/create

http://myapp.com/account/login
http://myapp.com/account/logout

http://myapp.com/account/verify
http://myapp.com/account/verify/{token}
http://myapp.com/account/settings

http://myapp.com/profile/FooMan

这一切都很好(至少我这么认为 - 欢迎任何提示),但我如何着手为诸如朋友之类的事物创建 URL 结构?我知道你可以:

http://myapp.com/profile/FooMan/friends

但对我来说,这似乎很难看。如果我想给朋友添加一条“/添加”路线,我该怎么做呢?提前致谢!

P.S。在某些页面上,例如 "login" 和 "create",我使用 route::get() 来显示表单,并使用 route::post() 将详细信息提交给控制器。这是不好的做法吗?

我认为遵循 facebook 或 twitter 等标准系统将有助于您的路由方法。

为避免冗长的 URL,您可以通过他们的用户名直接路由到配置文件,使用如下路由:

Route::get('{username}', ...);
Route::get('{username}/friends', ...);
// etc

// Current user
Route::get('friends', ...);

现在,有时用户名可能会与 domain.com/friendsdomain.com/login 等核心操作发生冲突。建立核心操作列表并限制用户使用这些关键字进行注册。使用 laravel 的 not in 验证很简单。