Chcę utworzyć lokalny plik konfiguracyjny, config_local.yml
, który pozwala na prawidłowe skonfigurowanie środowiska programistycznego bez ryzyka zagubienia środowisk programistycznych innych osób. Chcę, aby był to osobny plik, aby móc go "odczytać" i wiedzieć, że w projekcie nie brakuje niczego istotnego, a jednocześnie nie ma problemu z gitem, który nieustannie mówi mi, że config_dev.yml ma nowe zmiany (i działa na ryzyko kogoś popełniającego te zmiany).Czy mogę dołączyć opcjonalny plik konfiguracyjny do Symfony2?
Teraz mam config_dev.yml robi
imports:
- { resource: config_local.yml }
który jest wielki, chyba że plik nie istnieje (to znaczy dla nowego klon repozytorium).
Moje pytanie brzmi: czy jest jakiś sposób, aby włączyć to opcjonalnie? Oznacza to, że jeśli plik istnieje, należy go zaimportować, w przeciwnym razie go zignorować.
Edit: miałem nadzieję składni jak:
imports:
- { resource: config.yml }
? { resource: config_local.yml }
Twoja odpowiedź pozwala mi myśleć, że może będzie mógł stworzyć swój własny "YamlFileLoader", który może zakończyć się niepowodzeniem, jeśli plik yml nie zostanie znaleziony. –
Bardzo dobra odpowiedź, dzięki. Chciałbym dać +2 –
@arms Tak, jest to również możliwe, ale musiałby po prostu stworzyć niestandardowy 'FileLocator' zamiast' YamlFileLoader'. Ten wyjątek zostanie zgłoszony w 'Symfony \ Component \ Config \ FileLocator :: locate', więc musimy rozszerzyć klasę podstawową, aby ładowanie zakończyło się niepowodzeniem. – gilden