2012-09-15 2 views
0

우리는/저자/사용자가 모든 사용자에게 개인 정보를 표시 할 수 있음을 알고 있습니다. 필자의 경우, 각 사용자는 개인 폴더를 가지고 있습니다. 내 목표는 사용자가 각 사용자의 개인 폴더를 방문 할 때/author/user에 정보를 표시하는 것입니다. 이 정보는 먼저 "기본 항목으로 컨텐트 항목 선택"옵션과 함께 표시되어야합니다. /author/user 및 "기본보기로 컨텐트 항목 선택"옵션에 대한 링크를 만들었습니다. 문제는 사용자가/author/user로 리디렉션되고 개인 폴더에서 탐색 할 수 없다는 것입니다. 이 문제를 해결하는 트릭이 있습니까?개인 폴더에 개인 정보 표시

답변

0

콘텐츠 항목을 기본보기로 인식하는 대신 author.pt의 사용자 정의 사본 인 폴더에 대한 새보기를 등록 할 수 있습니다.

0

두 가지 문제가 있습니다. 사용자 폴더의 기본보기를 변경하고 새로운보기를 만드는 것입니다.

(당신이 그것을 필요하지 않은 경우 피드백 양식을 제거하거나 단지입니다 .Pt) 새로운 피부 CPT를 만들기 위해 author.cpt의 코드를 사용하여 바로 변경 :

author python:(len(request.traverse_subpath) > 0 and url_unquote_plus(request.traverse_subpath[0])) or request.get('author', None); 

뭔가에 그 사용자 이름 또는/회원/<> 경로에서 사용자를 붙잡 으십시오. 그런 다음 portal_types의 폴더 유형을 새 ID (새 사용자 폴더 또는 이와 유사한)로 복사하고이를 사용자의 portal_membership의 기본 폴더 및 portal_types -> 새 사용자 폴더로 할당하고 기본보기로 할당하십시오.

그런 다음 모든 사용자 홈 폴더를이 새 폴더 유형으로 마이그레이션해야합니다.

대안은 어쩌면 그냥 요청의 저자 매개 변수로 author.cpt 전화, 대체보기를로드하는 index_html 스크립트를하는 것입니다 : <>는 이전과 같이 얻을 수있다

context.author(author=<<this folder author>>) 

. 사용자가 로그인 한 후에이 힌트를 따라 index_html을 추가하면 다음과 같이 할 수 있습니다.

http://collective-docs.readthedocs.org/en/latest/sessions/login.html#post-login-actions

관련 문제