zingle / api-resource-mapper
dev-master
2018-06-05 16:18 UTC
Requires
- php: ^7.1
Requires (Dev)
- illuminate/container: ^5.3
- illuminate/support: ^5.3
- symfony/property-access: ^3.1
- symfony/yaml: ^3.1
- zingle-com/laravel-modules: dev-master
This package is not auto-updated.
Last update: 2024-09-20 22:43:18 UTC
README
Zingle API 资源映射器提供帮助,用于构建和序列化第三方 API 返回的模型和集合
安装
将 zingle/api-resource-mapper
添加到 composer.json
中。将 ApiResourceMapperProvider
添加到 config/app.php
中
使用
对于任何需要资源映射的模块,向其服务提供者添加映射注册
private function registerMapper() { $this->app->bind('zingle.foo_module.meta_loader', function (Container $app) { /** @var Module $module */ $module = $app->make('laravel_modules.repository')->find('FooModule'); return new Loader($module->getExtraPath('Resources/config/mapping')); }); $this->app->bind('zingle.foo_module.model_meta_factory', function (Container $app) { return new ModelMetaFactory($app->make('zingle.foo_module.meta_loader')); }); return $this; }
在模块的 AbstractResource 构造函数中,使用工厂生成映射器
$this->mapper = $mapperFactory->getMapper(app('zingle.foo_module.model_meta_factory'));