Repository Pattern
(내 생각에는 그 패턴에 익숙하지 않음) 프로젝트 Laravel 5.4
에서 작업 중입니다. 나는 웹에 이것에 대해 빨간색을 많이했습니다하지만, 난 여전히 두 가지 중요한 질문이 있습니다Laravel 저장소 패턴 설명
> 질문 # 1 :
내가 Laravel ORM Eloquent
사용하고 난이처럼 보이는 인터페이스를 가지고 상상을 :
<?php
namespace App\Repositories\User;
interface UserRepoInterface
{
/**
* @param array $user
*/
public function update(array $request, User $user);
}
당신은 내가 매개 변수와 같은 웅변 User
모델을 지정했는지 확인할 수 있습니다.
웅변 구현은 다음과 같습니다
public function update(array $request, User $user)
{
$user->name = $request['name'];
$user->last_name = $request['last_name'];
$user->email = $request['email'];
$toUpdate->save();
}
그래서 내 질문 :
내 인터페이스의 웅변 User
모델을 하드 코딩 잘못인가? 웹에서 많은 예제를 통해이 작업을 수행하는 사람들을 볼 수 있지만 파일 기반 구현으로 웅장한 구현을 바꾸고 싶다면 어떻게해야할까요? 업데이트 방법에 User
모델을 전달해야하므로 문제가됩니다.
User $user
대신 $user
만 선언하면이 문제의 해결책은 무엇입니까?
> 질문 # 2 :
어떻게 매김을 처리해야합니까? 예를 들어
내 웅변 UserRepository
나는 다음과 같다 방법했습니다 :
public function index()
{
return User::orderBy('name', 'asc')
->withCount('messages')
->with('corporation')
->paginate(10);
}
이 잘못인가? 내 컨트롤러에서만 페이지 매김을해야합니까?
좋은 설명은 나에게 많은 도움이 될 것입니다.