지금까지 우리는 메시지 보드의 성능을 개선 하 고 사용자 인터페이스 개선 하기 위해 많은 완료 하지 않은. 사실, 우리는 사용 하 고 ZMI 관리를 위한 모든 메시지는 완전히 최종 사용자에 적합 하지 않습니다. 그래서이 장에서 우리가 메시지 얇은 응용 프로그램의 현실에서 본 대로 메시지 보드에 대 한 사용자 인터페이스를 구현 하는 피부를 개발에 집중할 것 이다. 패키지 파이썬 개발의 비트, 하지만 그것은 우리의 두 콘텐츠 구성 요소 부분에 대 한 좋은 작업을 하는 것이 같아요.
피부 (Zope 2에서 CMF에 해당)는 기존 보기에 사용자 지정 인터페이스를 구현 하는 방법 이다. 이것은 HTML과 CSS (계층 스타일 시트), 매우 비슷합니다 그리고 HTML 코드에 대 한 견해 (페이지 템플릿, 뷰 클래스)와 스타일 시트 (CSS)는 HTML 구조 요소에 피부. 그러나 피부 아래 다른 추상화 계층이입니다.
피부는 실제로 레이어 스택. 각 레이어는 보기 및 자원 포함 되어 있습니다. 이 특정 조회 및 리소스 무효화 될 수 있습니다. 예를 들어 기본 레이어에 우리의 스타일 시트 (CSS)를 정의할 수 있습니다. 그러나, 스타일 시트는 너무 간단 하 고 우리의 요구에 대 한 부적 절 한입니다. 그래서 우리 새 레이어 보드를 만들 수 있으며 새 스타일 시트를 거기 넣어. 완료 되 면, 우리는 보드 레이어 기본 레이어 후 피부 정의 하 고 모든 새 스타일 정의 적용.
단계 1: 준비
우리 새로운 피부를 생성 하기 전에 우리가 준비를 해야 합니다. 원래 보기와 리소스 혼동, 우리 라는 피부 Messageboard/브라우저 디렉토리에 패키지를 만들고 'init.py' 파일을 생성 하는 것을 잊지 마세요. 그런 다음 빈 CONFIGURE.ZCML 파일을 만듭니다.
1 & http://www.aliyun.com/zixun/aggregation/37954.html "> nbsp; < 구성
2 xmlns = "Http://namespaces.zope.org/browser" >
3
4 < / 구성 >
이제 구성을로 가져오려면 다음 문 사용 하 여 브라우저의 CONFIGURE.ZCML
1 < 패키지 포함 = ". 피부" / >
단계 II: 새 스킨 만들기
새로운 피부를 만드는 것은 매우 쉽습니다, ZCML와 구성 문을 구현 될 수 있습니다 완전히. 브라우저 네임 스페이스는 이름 피부 문을 우리가를 완료, 그래서 스킨 패키지 구성 파일에 다음 문을 추가 합니다.
1 < 레이어 이름 = "보드" / >
2
3 < 피부 이름 = "보드" 레이어 "로테르 담 기본 보드" = / >
첫 번째 문은 어디 우리가 모든 새 서식 파일을 넣어 하 고 독특한 피부 생산 새 레이어를 만듭니다. 두 번째 문은 라는 보드 3 레이어 스택 요소의 구성 된 스킨을 만듭니다. 하단 계층은 기본 계층, 로테르 담, 적용 그리고 위원회에 의해 덮여 있다.
왜 로테르 담 레이어 여기 있을 것입니다 궁금해 수 있습니다. 로테르 담 레이어 파비콘 등 다른 보기 코드를 우리에 게 유용한 몇 가지 더 나은 정의 포함 합니다. 게다가, 우리는 매우 자주이 레이어를 사용 하지 마십시오.