템플릿 특성 언어
Template Attribute Language![]() |
TAL(Template Attribute Language)은 동적 HTML 및 XML 페이지를 생성하는 데 사용되는 템플리트 언어다.프로그래머와 디자이너의 협업을 단순화하는 것이 주요 목표다.이는 TAL 문을 유효한 HTML(또는 XML) 태그 안에 내장함으로써 달성되며, 이 태그는 공통 설계 도구를 사용하여 작업할 수 있다.
TAL은 조페를 위해 만들어졌지만 다른 파이톤 기반 프로젝트에서도 사용된다.
특성
다음 속성이 사용되며, 일반적으로 "로 접두사가 된다.tal:
":
- 정의를 내리다
- 속성이 있는 요소(포함된 요소 포함)에서 유효한 로컬 변수 생성
- 조건
- 태그 렌더링 여부 결정(및 포함된 모든 텍스트)
- 되풀이하여 말하다
- 루프 변수를 만들고 시퀀스를 반복하는 태그(예: 선택 목록 또는 테이블 생성)
- 내용물
- 태그의 내용을 대체하다
- 대체하다
- 태그를 대체하므로 내용 또는 속성과 함께 사용할 수 없음
- 특성
- 지정된 속성을 대체한다(예: 을 사용하여).
tal:attributes="name name; id name"
입력 필드의 이름 및 ID 속성을 변수 " 값으로 설정할 수 있음name
") - 생략 부호를 붙이다
- 시작 태그와 끝 태그를 생략하고 지정된 식이 참인 경우에만 내용을 렌더링할 수 있다.
- 당직의
- 오류가 발생하면 이 속성은 내용 태그와 같이 작동한다.
태그에 둘 이상의 TAL 속성이 있는 경우, 위의 (공정하게 논리적인) 순서에 따라 평가된다.
속성을 스스로 취할 수 있는 태그가 없는 경우, 특수 TAL 태그를 사용할 수 있어 "tal:
" 접두사 접두사 선택사항(예::
<tal:if condition="president/list"> ...</탈:if>
그 안에 있는 코드가tal:if
컨텍스트(응용프로그램 서버가 컨텍스트를 정의함)에 변수 "를 포함할 때마다 사용할 태그itemlist
"참 값을 갖는 ". 예를 들어 적어도 하나의 요소를 포함하는 목록.결장을 따르는 식별자는 임의적이다; 그것은 단지 그곳에 있어야 하며, 개폐 태그와 같은 것이어야 한다.
금속
METAL(Macro Expansion Template Attribute Language)은 TAL을 보완하여 템플릿 파일 간에 코드를 재사용할 수 있는 매크로를 제공한다.둘 다 조프를 위해 만들어졌지만 다른 파이썬 프로젝트에서도 사용된다.
METAL은 코드를 재사용할 수 있는 기능으로 TAL을 보완한다.그것은 개발자가 매크로를 정의하고 사용할 수 있게 해주며, 매크로를 사용할 때 슬롯에 대해 가변 콘텐츠를 지정할 수 있다.
XML 문서를 생성할 때 XML 네임스페이스를 지정해야 함(xmlns:metal="http://xml.zope.org/namespaces/metal"
).
METAL 속성
다음과 같은 속성이 인식되며, 일반적으로 „이 필요하다.metal:
" 접두사:
- 정의를 내리다
- 매크로를 만들다
- 정의를 내리다
- 매크로 내부에 슬롯을 생성
- 중고품인
- 매크로 사용(보통 TATES 경로 표현식을 통해 제공)
- 만두의
- 매크로 사용 시 지정된 슬롯의 기본 내용 바꾸기
- 연장선상
- Zope v3 이후: 슬롯을 재정의하여 하위 클래싱에 버금가는 매크로를 확장함
보통 한 번에 하나씩만 사용한다.
속성을 취할 수 있도록 스스로를 빌려주는 태그가 없는 경우, 그리고 둘 이상의 METAL 속성이 필요한 특별한 경우, 특별한 METAL 태그를 사용할 수 있어 ,metal:" 접두사를 선택적으로 만들 수 있다.예: (Roundup을 염두에 두고 설치):
<<html금속:define-macro-macro="빙"> ...<<metal:myslot define-changes="선택형식"> ...</metal metal:use-use-use="use-use="page/macros/icing"><form metal:fill-fil="option-form" action="action context/지정자") ...</형식> </형식>
사용법
TAL/TALES/METAL은 다음 프로젝트에서 사용된다.
- Zope(웹 응용프로그램 서버)
- 반올림(추적기 발행)
기타 구현
원래 Zope 구현 외에 다음과 같은 사항이 있다(완전하지 않음).
파이톤
- 심플탈
- 오픈탈
- ZPT, Zope 페이지 템플릿의 독립 실행형 버전
- 카멜레온, Zope 페이지 템플릿의 빠른 재구현
C#
- 샤프탈
바둑 (골랑)
- TAL, TALSE 및 METAL의 고유 바둑 구현인 TAL.
자바스크립트
자바
- JPT: Java 페이지 템플릿
- 자바ZPT
- ZPT-자바
펄
- PETAL, Perl 템플릿 속성 언어
- 템플릿-TAL
라쿠
- 플라워, TAL의 라쿠 구현으로 페탈과 PHPTAL이 일부 연장되어 있다.
PHP
- PHPTAL
- 트위탈
- 비스킷
- 즈탈
XSL
- XSLTal, XSLT를 통해 TAL로 변환
커먼 리스프
유사한 구현
- ATAL – 실제로 TAL을 구현하지는 않지만 TAL 개념에 영감을 받은 제품
- 백리향 - TAL 구현이 아니라 유사한 "자연 템플릿" 언어
참조
외부 링크
- Zope 페이지 템플릿 참조(Zope Book)