我注意到Laravel文档中的许多示例似乎都有控件,其中类只有一个用法/方法。
例如,在this part of the doc中,他们有一个UpdatePasswordController
类,只有一个方法,update()
:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use App\Http\Controllers\Controller;
class UpdatePasswordController extends Controller
{
/**
* Update the password for the user.
*
* @param Request $request
* @return Response
*/
public function update(Request $request)
{
// Validate the new password length...
$request->user()->fill([
'password' => Hash::make($request->newPassword)
])->save();
}
}
通常情况下,我会在updatePassword()
课程中添加一个名为UserController
的方法(以及signIn()
,signUp()
,resetPassword()
等),但是我想知道创建多个类是否更好,每个类都有一个动作?
答案 0 :(得分:0)
通常,类被定义为单一目的。在laravel中,为了进行身份验证,有一个Illuminate基本捆绑包,经过多年优化。 作为示例,UpdatePasswordController仅负责更新密码, AuthController仅负责身份验证。 我希望你能够研究一些MVC best practices