2012-10-29 4 views
0

언제든지 '체크인'상태에있는 파일 모음을 어떻게 가져 옵니까? plone 사용하기 4.1. 체크인 한 것은 워크 플로 상태가 아닙니다. 이 파일은 편집하는 동안 사용자가 잠근 파일로, 다른 사용자가 '체크인'을 통해 파일의 잠금을 해제하기 전에 최신 복사본에 액세스 할 수 없도록합니다. 내가 잠겨있는 모든 파일의 목록을 표시하는 컬렉션을 가질 수 있는지, 즉 언제든지 '체크 아웃'또는 '체크인'상태가 있는지 알고 싶습니다.체크인 된 파일의 컬렉션을 가져 오는 방법은 무엇입니까?

+0

시스템의 "체크의"사용자 지정 워크 플로 상태인가? 그렇지 않으면 귀하의 질문은 내가 이해하는 어떤 것도 의미하지 않습니다. – SteveM

+1

작성자가 "체크인"대 "체크 아웃"스테이징 상태 (반복을 통해)를 말하고 있는지 궁금합니다. –

+0

@Jon Stahl 맞습니다. 그게 내가 찾고있는 내용입니다. – user956424

답변

2

체크인 된 개체는 "일반"게시 된 개체과 구별 할 수 없기 때문에 이러한 컬렉션을 쉽게 만들 수 없습니다. 그 식별자 "출판"에 대한 "copy_of"

  • 검사로 시작하는 개인 상태에서 객체를 검색하여 체크 아웃 객체에 대한

    • 봐 :

      몇 가지 해결 방법

      마음에 와서 사물.

    • 추가 "체크인 됨"상태를 포함하는 사용자 지정 워크 플로를 만들고 체크 아웃 된 개체에 대해 체크인 된 상태를 적어도 한 번 이상 사용하십시오. 만약 당신이 좋아하면

      >>> [brain.getObject().getId() for brain in portal.portal_catalog(
          review_state="published")] 
      ['front-page', 'news', 'aggregator', 'events', 'aggregator', 'Members'] 
      

      모든 개체의 목록과 비교할 수 있습니다 :

      이들의

    아무도 그렇게 게시 된 항목에 대한 카탈로그 검색는 아마 당신의 최선의 방법이다 특히 매력적인 없다

    >>> [brain.getObject().getId() for brain in portal.portal_catalog()] 
    ['front-page', 'news', 'aggregator', 'events', 'aggregator', 'Members', 
        'copy_of_front-page'] 
    

    프로그래밍 방식으로이 작업을 수행 할 필요는 없으며 게시 된 개체와 모든 개체를 검색하는 것의 차이를 보여 주기만하면됩니다. 후자는 추가 체크 아웃 된 개체를 반환합니다 (개인 상태).

  • 0

    check-in/check-out 상태가 portal_catalog에서 색인화되지 않았으므로 정보를 모음에서 사용할 수 없게 만듭니다.

    1

    그것은이 방법으로 가능 :

    • 이 새 필드를 추가 유명한 schemaextender를 통해 모든 ATCT의에 'workingcopy을 가지고'.
    • 카탈로그에 필드를 등록하여 컬렉션에서 사용할 수 있도록합니다.
    • 작업 처리기를 수신하여 필드를 true로 설정하고 작업 복사본이 만들어지면 필드를 설정하고 쿡 아웃하거나 취소 할 때 False로 설정합니다.

    나는 내가 곧 프로젝트에 대한 어쨌든 필요가 있기 때문에, 이것에 대한 패키지를 썼다 : adi.workingcopyflag

    관련 문제