다시 오신 것을 환영합니다.
지금까지 Mongo 콘솔을 사용하여 Mongo TV와 상호 작용하는 방법을 살펴 보았습니다. Mongo 콘솔은 수업을 가르치고 테스트하고 디버깅하기에 좋지만 실제로는 실제로 수행 할 데이터베이스는 표현 된 코드 대신 사용됩니다.
그래서 그들은 예를 들고 Yelp 캠프로 가서 그녀의 앱을 살펴 봅니다.
예.
다음은 mangu를 사용하는 예제입니다.
예를 들어 배열에 캠프장을 추가하는 대신 새로운 캠프장을 추가 할 때 데이터베이스에 몽고 데이터베이스와 campgrounds라는 컬렉션이 있습니다.
그리고 이것은 실제로이 시리즈에서 곧 시작될 것입니다.
그런 다음 Mongar DP 컬렉션에 삽입하려는 배열로 밀어 넣는 것보다 캠프장을 슬래시하기위한 게시물 요청을 제출하면 여기에 정의 된 배열 캠프장으로 캠프장을 렌더링하는 대신 축소 된 캠프장에 나타납니다.
우리는 실제로 D-B 캠프장 찾기를하고 그 결과를 받아 캠프장 서식 파일로 보내려고합니다.
승인.
그래서 우리는 거기에 갈 것입니다.
이것이 바로 우리가이 수업에 초점을 맞추고있는 이유입니다.
그렇게하기 위해 우리는 몽구스라는 도구에 대해 배울 것입니다.
그래서 3 가지 주요 목표를 가지고 몽구스가 왜 우리가 그것을 사용하는지 설명해줍니다.
또한 자바 스크립트 파일 대신 사용하는 방법을 보여주고 싶습니다.
몽구스가 무엇인지 이야기하여 시작합시다.
그래서 공식 홈페이지를 열었습니다.
Mongoose는 천재가없는 우아한 Mongo DB 객체입니다.
승인.
조금 더 읽어 봅시다.
Mongoose는 응용 프로그램 데이터를 모델링하기위한 간단한 스키마 기반 솔루션을 제공합니다.
여기에는 내장형 typecasting 검증 queery building 비즈니스 로직 동축 케이블 등이 포함됩니다.
따라서 노련한 개발자에게는 이것이 더 합리적이라고 생각합니다.
그러나 그것이 정말로 의미하는 것은 몽구스가 도구라는 것입니다.
NPM으로 다운로드 할 패키지로 자바 스크립트 파일 대신 Mongo D-B와 상호 작용할 수 있습니다.
그것은 몽구스없이 할 수 있습니다.
Jay Querrey가 Dom과 쉽게 상호 작용할 수 있지만 쿼리가 필요 없듯이 데이터베이스와 상호 작용하기가 더 쉬워졌습니다.
Mongoose는 우리가 monkhood DB 데이터베이스와 상호 작용하는 것을 더 쉽고 깨끗하게 해주지 만 필요하지는 않습니다.
이제 9 번으로 돌아가서 하나의 자바 스크립트 파일을 만들어 보겠습니다.
익스프레스 애플리케이션이 아니기 때문에 노드 노드로 실행 한 단일 파일이 될 것입니다. 그리고 파일을 실행할 때 우리는 몽구스를 사용하여 데이터베이스에 무언가를 추가하려고합니다.
그래서 시작하겠습니다.
나는 데이터베이스라고 불리는 디렉토리 안에 있고 파일을 만들 것입니다.
그리고 그냥 고양이라고 부르 자.
예, 나는 너무 많은 개 물건을 해왔다.
나는 불만을 얻을 것이라는 것을 안다.
진지한 것을 잡으려고 고양이를 잘 돌보는 것.
그것을 열어보고 다른 것을하기 전에 패키지 인 몽구스를 설치하려고합니다.
우리가 가서 여기에 방을 만들고 그 다음으로해야 할 일은 우리 몽구스를 할 몽구스를 필요로합니다 몽구스가 필요하며 우리가 먼저해야 할 일은 새로운 고양이를 데이터베이스에 추가하는 것입니다. 나중에 우리는 데이터베이스에서 모든 고양이를 검색 할 것이고 우리는 그것과 같은 각각의 고양이를 기록하는 간단한 콘솔을 할 것입니다.
이제 데이터베이스에 새 고양이를 추가하는 방법을 알아 내서 시작하겠습니다.
그리고 우리가 할 수 있기 전에 우리가 데이터베이스에 연결해야하는 몽구스와 함께 할 필요가 조금 더 있습니다.
이렇게 우리가 백그라운드에서 어떻게 작동하는지 기억하십시오.
이것이 우리의 몽고 마귀입니다.
우리는 계속 실행해야합니다.
그래서 당신이 어떤 이유로 그것을 끈다면 그 명령어를 다시 켜십시오. Man-God 그리고 나서 우리는 몽구스에게 우리가 실행하고있는이 서버에 연결하도록 말할 것입니다. 그리고 몽구스가 연결되어있는 것처럼 보입니다. 이 Mongo DB 콜론 슬래시 localhost 슬래시처럼 보일 필요가있는 URL.
그리고 우리가 다음에 가고 싶은 무엇이든지.
이것이 우리 데이터베이스의 이름입니다.
그리고 전에 우리가 만든 데이터베이스가 없다면 cat app라고 부르 자. cat app 데이터베이스가 아직 없다.
그리고 내가 이걸 실행하면 고양이 앱을 발견하고 연결해 주며 고양이 앱을 찾을 것입니다.
그러나 하나가 있고 그것을 발견하면 기존 고양이 응용 프로그램을 사용할 것입니다.
그래서 나는 고양이 앱으로 갈 것입니다.
그건 나에게 잘됐다.
이제 데이터베이스에 연결되어 파일 노드 cat cat을 실행하여 테스트 할 수 있습니다.
예.
우리는 모든 것이 잘 작동한다는 것을 의미하는 오류를 얻지 않습니다.
그래서 우리는 그것을 통제 할 수 있습니다.
이제 우리가하고자하는 것은 데이터베이스에 고양이를 추가하는 것입니다.
그리고 우리가 그것을 할 수 있기 전에 우리는 실제로 고양이가 어떻게 보이는지 정의 할 필요가 있습니다.
그래서 저는 여기서 이것을 할 것이고 여러분은 새로운 구문을 꽤 볼 것입니다.
전에는 보지 못했던 몽구스와 함께 제공되는 새로운 방법이 많이 있습니다. 모두 설명하겠다고 약속하지만, 시작하기 만하면됩니다.
그래서 우리는 우리의 고양이 스키마가 새로운 몽구스 도트 스키마와 같다고 정의합니다. 우리는 물체를 그 안에 그리고 그 안에있는 물체를 통과시키는 자본 손실을 가지고 있습니다. 우리는 고양이가 숫자라는 이름의 문자열을 가지고 있다고 말할 것입니다. 우리는 그것을 할 수 있습니다. Breede 비록 ​​내가 실제로 많은 고양이 품종을 알지 못한다는 것을 깨달았지만, 나는 그것을 바꾸기 위해 이것을 변형시킬 것이다. 이것은 정말로 까다로운 단어이다.
나는 항상 이것을 잊어 버린다.
A : 그는 그것을 제대로했다고 생각합니다.
그래서 기질을 발휘할 것이고 그것도 줄 일 것입니다.
승인.
그리고 우리는 구할 것이다.
그리고 이것은 실제로 우리 데이터베이스에 아무 것도하지 않습니다.
그냥 몽구스 나 자바 스크립트를 알려줍니다.
그것은 데이터베이스에 고양이를 추가 할 수 있기를 원하는 자바 스크립트 측면을 알려주고 고양이는 자신이 묻지 않을 수도있는 것으로 정의해야합니다.
아니.
Q 음은 비 관계형입니다.
테이블을 정의 할 필요가 없다는 의미는 아닙니다.
네, 맞습니다.
이것은 테이블을 정의하지 않습니다.
이것은 데이터에 대한 패턴을 정의하고 있지만 새로운 요소를 추가하거나 특정 사항을 벗어나는 것이 금지되어 있다는 것을 의미하지는 않습니다.
그것은 구조를 제공하는 좋은 방법 일뿐입니다. 왜냐하면 이러한 고양이를 처리 할 수있는 코드를 작성하기 위해서는 예측 가능한 구조가 필요하기 때문입니다.
이름 연령과 기질을 인쇄하기위한 템플릿이 필요하다고 가정 해 봅시다.
우리는 모든 고양이가 나이와 기질이라는 이름을 지니고 있는지 확인해야합니다.
그리고 만약 그렇지 않다면 우리는 그것을 예상 할 수 있어야합니다.
이것이 바로 우리가 스키마를 정의하는 방법입니다.
그러나 우리는 할 일을 한 가지 더 해결합니다.
그리고 제 경험상이 다음 라인은 약간 혼란 스럽습니다.
그래서 입력 할 때 첫 번째 cat은 대문자 C와 같고 mongoose Dopp model과 같고, 다시 cat을 이번에는 따옴표로 묶고 스키마를 입력합니다.
그리고 우리는 구원을 얻을 것입니다.
그래서 우리가 여기서 한 것은 모든 고양이가 나이와 기질이라는 이름을 가진 패턴 인 스키마 스키마 스키마를 취한 것입니다. 우리는이를 모델로 컴파일하고이를 변수 cat에 저장하고 이제 cat 변수를 사용할 수 있습니다 cat C를 사용하여 새 고양이가 고양이를 찾아서 고양이를 제거하여 고양이를 업데이트하도록합니다.
우리는 고양이의 모든 것을 다 할 것이므로 고양이 찾기 또는 고양이 도트 제거 또는 고양이 도트 만들기와 같은 것들을 갖습니다.
그래서 우리는이 고양이 개체를 만들었습니다. 고양이 개체는 실제로 다른 패턴을 많이 가지고있는 고양이의 패턴입니다.
그래서 이것은 고양이가 나이와 기질이라는 이름을 가지고 있다는 단순한 패턴입니다.
그리고 그것을 모델로 컴파일 한 후에 변수에 저장하면 지금은이 패턴이 아니라 실제로 원하는 모든 메소드가 있습니다.
그래서 그것은 그 패턴을 취하고 우리가 사용해야하는 모든 방법을 가진이 복잡한 모델을 만듭니다.
그리고 항상 여기에서 특히 혼란스러운 점은 항상 컬렉션 이름의 유일한 버전이라고 생각합니다.
그래서 우리가 여기에했던 고양이를 고양이에게 주면 고양이라고 불리는 컬렉션을 만들 것입니다. 그리고 그것이 복수형 인 방법만큼이나 똑똑합니다.
좋은 라이브러리가 있습니다.
사람과 같이 무언가를 아무런 문제없이 복수화 할 수 있습니다.
다시 이것은 고양이 모델 인 우리의 단수 버전의 이름입니다. 그리고 그것은 자동적으로 우리의 데이터베이스에서 D-B 바보 같은 고양이처럼 보이는 새로운 컬렉션을 만들 것입니다.
자, 이제 우리는 고양이를 추가하기 위해해야 ​​할 모든 것을 가지고 있습니다.
이제 코드를 작성하면됩니다.