I'm learning how to work with the MVC pattern, using Laravel, but I have a question. This is an example case, there is a User model and the user can register by itself or an admin can create a new user account using the admin panel, the user should be logged in after the registration and the admin redirected to the admin panel home or something like that. I see 3 possible ways to do this:
Make 2 controllers for the same model, UserController and AdminUserController.
Use only 1 controller with 2 separate methods, UserCreate and Admin Create.
Use only 1 controller with only a create method and check the user role to do the correct actions depending of it.
I don't know if any of them is correct; I would appreciate any opinion about which is the best approach.