저는 FW/1 프레임 워크를 배우고 있으며 지금까지 그렇게 잘하고 있습니다. 저는 주로 컨트롤러/서비스/뷰가 어떻게 작동하는지 이해합니다. 그러나 어떤 경우에는 뷰를 조작하는 몇 가지 추가 기능이 있습니다. 즉, 뷰에 반환되는 내용에 따라 CSS와 레이아웃을 변경합니다. 이 함수를 뷰에 액세스 가능하게 추가하는 가장 좋은 장소는 어디입니까?FW/1 추가 기능을 넣기에 가장 좋은 장소는 무엇입니까?
1
A
답변
3
예제를 사용하려면 일반적으로 응용 프로그램에서 날짜 등을 형식화하는 데 'formatter'객체를 사용합니다. 이것을 FW/1 앱에서 수행하기 위해 나는 일반적으로 요청 컨텍스트 (rc)에 포맷터 객체를 넣을 setUpRequest()
이라는 컨트롤러 메소드가 있습니다.
component accessors="true" {
property Any formatter;
public void function default(Any rc){
rc.formatter = formatter;
}
}
내가 처리 할 수 ColdSpring를 사용
예를 들어, 내 setupRequest() 메소드는이
function setupRequest(rc) {
controller('setup.default');
}
처럼 그리고 나는이 유사한 코드를 것) (setup.default에 보일 수 있습니다 내 의존성 주입 -하지만 난 당신이 쉽게 DI/1을 사용하고 전혀이 코드를 변경하지 않아도 될 수 있다고 확신합니다. 내가보기에 날짜를 포맷해야하는 경우
다음, 예를 들어, 단순히 이것을 사용 :
rc.formatter.formatDate(someObject.getSomeDate())
당신은 등 당신의 CSS, 서로 다른 논리를 사용하는이 예제를 수정할 수 있음을 넣어 로직을 CFC에 저장하고이를 요청 컨텍스트 (rc)에 포함시킵니다.
시간을내어 설명해 주셔서 감사합니다. 이것은 모두 의미가 있습니다. 이것은 응용 프로그램 전체에서 호출 할 수있는 표준 함수에 대해서는 잘 작동하지만 함수가 비즈니스 논리 인 경우에도이 방법을 사용하는 것이 가장 좋습니다. 뷰에 출력 된 id를 취한 다음 더 많은 데이터베이스 쿼리를 수행하여 뷰의 출력을 변경하는 함수가 있다고 가정 해보십시오. –
이상적으로, 다른 데이터베이스 쿼리를 실행하고 뷰에서 해당 데이터를 사용하여 출력 결과를 결정할 수 있습니다. 세부 정보를 제공 할 수 있다면 올바른 경로를 안내하는 데 도움이 될 수 있습니다. –