nrslib / repository-supports
支持创建仓库。
0.0.0
2020-12-11 03:26 UTC
Requires
- php: ^7.3|^8.0
README
通过文件支持创建仓库。
示例
仓库
interface UserRepositoryInterface { function find(UserId $id): ?User; function save(User $user): void; }
use nrslib\RepositorySupports\FileRepository; class FileUserRepository implements UserRepositoryInterface { use FileRepository; function find(UserId $id): ?User { $user = $this->load($id->getValue()); if (is_null($user)) { return null; } else { return $user; } } public function save(User $user): void { $id = $user->getId()->getValue(); $this->store($id, $user); } }
设置
在 Laravel 中
use nrslib\RepositorySupports\FileRepositoryConfig; class AppServiceProvider extends ServiceProvider { ... /** * Bootstrap any application services. * * @return void */ public function boot() { // set directory here $debugPersistenceDirectoryFullPath = storage_path("debug\\persistence"); FileRepositoryConfig::$basicDirectoryFullPath = $debugPersistenceDirectoryFullPath; } }