1
我試圖通過刪除對服務容器的引用盡可能加速我的堆棧。在這種情況下,我只需要請求:刪除Symfony2範圍擴大通知
email_error_message:
class: Core\MyBundle\Services\Email\ErrorMessage
arguments: [ @request, %params ]
但是,這引發了範圍擴大問題。我現在不擔心重構代碼,我只是想通過添加strict = true來擺脫警告。但我似乎無法得到正確的YAML語法:
email_error_message:
class: Core\MyBundle\Services\Email\ErrorMessage
arguments:
- { type: service, id: request, strict: false }
- %params%
雖然這不工作。有任何想法嗎?
編輯 我知道我可以改變這個服務的範圍來請求,但在這種情況下,這不是一個選項。
謝謝,我沒有讀過,但不能不幸地做到這一點;它會影響到很多服務範圍內我不想改變的服務(我會更新我的問題以反映這一點) – Mathew 2012-04-19 15:43:45
@MatW好的 - 我已經更新了我的答案。 – richsage 2012-04-19 16:05:15
請注意'@ request ='語法在Twig的'globals'配置中不起作用(它引發'ServiceNotFoundException')。只有這樣,我發現將更廣泛的服務注入到Twig的全局變量中:$ this-> controller-> get('twig') - > addGlobal('A',$ this-> controller-> get('B')) ;'在請求監聽器中處理! – Wirone 2014-10-10 23:10:18