2016-12-28 59 views
1

我想在服务YAML顶部URL是这样的:symfony的3获取基础URL

app.meal_list_service: 
    class: Acme\MealLogBundle\Service\MealListService 
    arguments: ['@app.entity_repository_meal',getBaseUrl()"] 

我不能找到这个一个很好的解决方案。我试图从

'%router.request_context.scheme%://%router.request_context.host%/'

获取URL但这仅返回第一部分URL。

+0

示例:%kernel.root_dir%/ config/routing.yml –

回答

0

编辑:

我的错误。我以为你想要的根目录。 尝试在您的parameters.yml中定义项目根路径,并以类似于传递%kernel.root_dir%的方式传递它。

// in parameters.yml 
my_project_path: https://stackoverflow.com 

// in your service.yml 
app.meal_list_service: 
    class: Acme\MealLogBundle\Service\MealListService 
    arguments: 
     - '@app.entity_repository_meal' 
     - '%my_project_path%' 
0

你可以这样做:

app.meal_list_service: 
    class: Acme\MealLogBundle\Service\MealListService 
    arguments: ['@app.entity_repository_meal', '%request_stack%'] 

而在你的服务:

$baseUrl = $requestStack->getCurrentRequest()->getSchemeAndHttpHost();