2011-02-16 8 views
2

#set($x=abc) 문장을 VM_global_library.vm 파일에 추가했지만이 변수를 내 VM 템플릿에서 사용할 수 없습니다.속도 : 전역 변수를 정의하는 방법

이미지의 기본 경로와 같은 것에 대한 단일 전역 변수를 설정하고 싶습니다. 이것이 가능한가?

답변

1

VM_global_library.vm에는 Velocity 매크로 만 포함되어야하며 매크로 외부에서 선언 된 변수는 무시됩니다.

모든 전역을 보유하는 별도의 .vm 파일을 만든 다음 필요한 모든 템플릿에서 #parse 파일을 만들 수도 있습니다 (또는 자동으로 구문 분석 할 수있는 코드를 작성할 수도 있음). 이전에 VelocityLayoutServlet을 확장하여 비슷한 작업을 수행했습니다. 먼저 "global-variables.vm"을 병합하여 컨텍스트에 추가 한 다음 뷰를 계속 렌더링합니다.

전역 변수가 단순한 문자열 일 경우 특성 파일에 입력하고 코드를 직접 VelocityContext에 넣는 것이 더 효율적입니다.

2

변수를 VelocityContext에 추가하면 모든 사람이 사용할 수 있으며 전역 변수로 사용됩니다.

1

VelocityTools로 컨텍스트를 만들면 전역 데이터를 쉽게 설정하고 관리 할 수 ​​있습니다.

관련 문제