2017-05-03 2 views
1

를 사용하여 변경 옵션을 제공, 날짜 오름차순, 날짜 내림차순으로 정렬하지만,이 서비스는 "페이지 번호"또는 "일"의 범위로 (정렬 클래스 서비스 내) 제공 어레이 데르 페이지의 방법으로 이러한심포니 : 개인 서비스 - 다른 옵션 (또는 정렬) 분류기를 사용하고 있습니다 나는 현재하고 나머지 API를 가장 좋은 방법이 번들에서</p> <p>의 샘플 예를 얻을 수 FOSCommentBundle을 사용하고 서비스를 나머지 -API

재사용 정렬 주입되지

parameters: 
# The sorting factory class 
cms_content.sorting_factory.class: CMS\Bundle\ContentBundle\Sorting\SortingFactory 
# Provide to sort by date 
cms_content.sorter.date.class:  CMS\Bundle\ContentBundle\Sorting\DateSorting 
# Provide to sort by page number 
cms_content.sorter.page_nb.class: CMS\Bundle\ContentBundle\Sorting\PageNbSorting 

#  
sorter_sevices_aliases: 
    - 'cms_content.sorter.page_nb_desc' 
    - 'cms_content.sorter.page_nb_asc' 
    - 'cms_content.sorter.date_desc' 
    - 'cms_content.sorter.date_asc' 

services: 
# sort by page nb asc 
cms_content.sorter.page_nb_asc: 
    class: '%cms_content.sorter.page_nb.class%' 
    public: false 
    tags: 
     - { name: cms_content.sorter, alias: page_nb_asc } 
    arguments: [ASC] 

# sort by page nb dsc 
cms_content.sorter.page_nb_desc: 
    class: '%cms_content.sorter.page_nb.class%' 
    public: false 
    tags: 
     - { name: cms_content.sorter, alias: page_nb_desc } 
    arguments: [DESC] 

# sort by date asc 
cms_content.sorter.date_asc: 
    class: '%cms_content.sorter.date.class%' 
    public: false 
    tags: 
     - { name: cms_content.sorter, alias: date_asc } 
    arguments: [ASC] 

# sort by date desc 
cms_content.sorter.date_desc: 
    class: '%cms_content.sorter.date.class%' 
    public: false 
    tags: 
     - { name: cms_content.sorter, alias: date_desc } 
    arguments: [DESC] 

# the sorting factory (may be construct with empty array) 
cms_content.sorting_factory: 
    class: '%cms_content.sorting_factory.class%' 
    arguments: ['%sorter_sevices_aliases%', '%cms_content.sorting_factory.default_sorter%'] 

1ah 가능한 분류기 공급자의 배열로 정렬 공장 내부에 비공개로 선언 된 서비스를 사용하는 몇 가지 문제를했습니다

답변

0

나쁜 관행, 내가 실수를 가지고, 서비스는 같은 배열 참조에 의해 통과하지 않고 직접 주입한다 :

# the sorting factory (may be contruct with empty array) 
cms_content.sorting_factory: 
    class: '%cms_content.sorting_factory.class%' 
    arguments: [['@cms_content.sorter.page_nb_asc', '@cms_content.sorter.page_nb_desc', '@cms_content.sorter.date_asc', '@cms_content.sorter.date_desc'], '%cms_content.sorting_factory.default_sorter%']