2013-12-11 4 views
0

나는 두 개의 컨트롤러, 즉 사용자와 달력이 있습니다. 사용자 개체를 일정에 전달해야합니다. 여러 컨트롤러에서 변수를 돛에 어떻게 전달할 수 있습니까?돛에있는 여러 컨트롤러에 변수 전달하기

+0

 //this will allow me to store my informations inside the categories variable. var categories; Categories.find().done(function(err, cat){ categories = cat; }); //calling another datas and passing them to the view, alongside with my previous datas Categories.findOne(id).done(function(err, cat){ return res.view({ data : cat, cats : categories }); }) 

당신을 어떻게 실제로 컨트롤러에서 다른 변수로 변수를 전달한다는 의미입니까? 컨트롤러에서 모델을 호출 할 수없는 이유는 무엇입니까? 또는/api/services에 서비스를 만들고 전역으로 호출 할 수 있습니다. 당신이 나에게 더 많은 세부 사항을 주시면 분명히 당신에게 대답을 주실 것입니다. – VladNeacsu

답변

0

내 머리 꼭대기에서 session을 사용할 수 있다고 말하고 싶습니다. 디자인면에서 볼 때 한 컨트롤러에서 다른 컨트롤러로 변수를 전달할 때의 상황은 정말로 의문의 여지가 있습니다. 당신의 CalendarController.js에서

0

:

module.exports = { 

foo: function(req, res, next) { 

    User.findOne(2).exec(function(err, user) { 

     if (err) return next(err); 

     res.json(user); 

    }); 
}, 


/** 
* Overrides for the settings in `config/controllers.js` 
* (specific to CalendarController) 
*/ 
_config: {} 

}; 
+0

@Johngait 우리는 다시 컨트롤러의 객체를 검색하고 있습니다. 어떻게 결과를 변수에 저장하고 이것을 다른 컨트롤러로 전달할 수 있습니까? –

1

난 그냥 돛 시작하고 (일반적으로 말하는 Node.js를)하지만 자바 스크립트와 fearly 일반적인 해요 (클라이언트 편).

내가 알아 낸 유일한 방법은 가변 범위를 사용하는 것이 었습니다. 익명 함수 앞에 변수를 선언하면이 변수를 함수 내부에서 편집 할 수 있습니다. 당신이 뭔가해야 컨트롤러의 액션 내부 그래서 :) = 나는 그들이 더 나은 방법이 많이있어 확신, 그리고 내가 그들을 알고에 관심이

+0

이 시도하고 중단 점을 사용하여 변수 (카테고리) 봤어 .It는 done 함수 내에서 고양이와 동일하지만 일단 범위 (종료 함수)에서 벗어나면 그 값은 undefined로 변경됩니다. –

관련 문제