如何正确处理laravel表单?

问题描述 投票:0回答:1

我想正确处理用户存储表单。

我认为哪种模式最正确/最流行。它是存储库模式吗?服务模式?

另一个难点: 用户表单:姓名、电子邮件、邮政编码、城市、街道。我想以一种形式创建两个模型:用户和地址。我该如何解决?我经历过:

// UserController store(UserRequest $request)
$address = $addressRepo->create($request->validated());
$user = $userRepo->create($request->validated(), $address)

我想知道的问题:

  • UserRequest 具有与用户和地址相关的数据

我很困惑什么是最正确的。

php laravel design-patterns crud
1个回答
1
投票

如果您的应用程序不会超过 CRUD,请不要为存储库模式等烦恼。只需使用 MVC 模式即可。

如果你确实需要使用存储库模式,你也可以使用它,依赖注入。

您还可以创建一个 UserService,将

$request->validated()
数据发送到您的服务。

您应该将您的存储库注入此服务。您的服务应该保存您的逻辑,存储库应该进行存储更新等。

您的控制器:

UserService::createUser($request->validated());

您的服务:

...
$userRepository->createUser(...);
$addressRepository->createAddres(...);
© www.soinside.com 2019 - 2024. All rights reserved.