더북(TheBook)

fixtures 배열의 객체 하나하나를 몽고DB에 입력하려면 fixture.js에서 AddressBook(미티어 컬렉션 오브젝트)의 insert 메서드를 사용해야 한다.

Projects/addressBook/server/fixture.js

...생략...
Meteor.startup(() => {

    if(AddressBook.find().count() === 0){
        console.log("데이터가 존재하지 않습니다. fixture 데이터를 입력합니다.");
        /* 10건만 등록해보자 */
        for(var i=0,len=10; i<len;i++){
            AddressBook.insert(fixtures[i]);    
        } 
    }

});

Meteor.startup 메서드는 실행될 구문을 함수 형태(콜백 함수)로 전달받아 미티어를 처음 실행할 때 1번만 실행된다. 따라서 데이터가 없으면(AddressBook.find().count()의 반환값이 0이면) AddressBook.insert 메서드를 사용해 fixtures 배열의 오브젝트를 하나씩 생성했다.

정상적으로 실행되면 다음처럼 console.log에서 작성한 메시지를 확인할 수 있다.

~/Projects/addressBook$ meteor run

[[[[[ ~/Projects/addressBook ]]]]]

 

=> Started proxy.

=> Started MongoDB.

I20170617-15:06:26.226(9)? 데이터가 존재하지 않습니다. fixture 데이터를 입력합니다.

=> Started your app.

 

=> App running at: http://localhost:3000/


신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.