좋아요, 그래서 Symfony에서 사용하고 싶은 라이브러리를 가지고 있습니다. yml 파일에 저장된 구성입니다.내 자신의 라이브러리에 대한 설정 파일을 어디에두고 symfony 서비스에 경로를 삽입해야합니까?
현재 yml 파일은 src/AppBundle/Resources/config
입니다. 이 config 파일의 경로를 서비스에 주입해야합니다. 이것에 대해 갈 수있는 올바른 방법은 아니다 나는이 느낌
service_name: class: My\Library\Service arguments: ["../src/AppBundle/Resources/config/my_library_config.yml"]
- : 순간 나는 단순히 하드 services.yml
의 설정 파일에 상대 경로를 코딩 한?
나를 위해 합리적인 것 같습니다. 라이브러리 소비자는 구성이있는 곳에서 'My \ Library \ Service'를 말해야합니다. 물론'My \ Library \ Service'가 합당한 기본 가정을 만들 수 있습니다. 따라서 절대적으로 상대 참조를 사용할 수있는 결정 지점에 대한 응용 프로그램을 남겨 둡니다. – bishop
"% kernel.root_dir %/../src/AppBundle/Resources/config/my_library_config.yml"또한 트릭을 수행해야합니다. 다른 app/config 파일을 보면 절대 경로를 만드는 데 자주 사용되는 것을 볼 수 있습니다. 의존성 삽입 확장 프로그램 내에서 app_bundle_dir 매개 변수를 정의 할 수도 있습니다. 그러면 앱과 번들 간의 연결이 제거됩니다. – Cerad
Symfony에서 라이브러리로의 다리 역할을하는 간단한 독립 실행 형 번들을 사용할 수 있습니다. 그런 다음 symfony의 일반적인 설정 처리를 사용하여 필요한 모든 것을 서비스에 주입 할 수 있습니다. https://github.com/cwd/easyname-bridge-bundle을 참조하면 제 3 자 라이브러리에 매우 간단하게 연결할 수 있습니다. – Rufinus