강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của projectpipidi
projectpipidi

câu hỏi đã được viết

NestJS phụ trợ vững chắc, từ cơ bản đến nâng cao

Phát triển dịch vụ thành viên & mẫu DTO

스케마에서 리드온리로 버츄얼 작성할때 문의가있습니다.

Viết

·

530

0

이런오류가있는데요.png

id를 별도로 적어두질않으니 속성이 없다고 나오더라구요.

 

근데 선생님화면에서는 id가 없어도 에러가 안나던데 이유가 뭔가요?

 

id 지정했더니된다.png

 

일단 이렇게 id를 만들어두었더니 작동도 잘 되고 오류도 안나는데

 

선생님하고 다른점이 뭔지 궁금합니다.

node.jsmongodbexpressnestjsssr

Câu trả lời 4

1

저는 비슷하지만 조금 다른 문제가 생겼었는데요,

mongoose 공식문서를 참조했습니다.

https://mongoosejs.com/docs/tutorials/virtuals.html

 

저는 처음에 schema.virtual.get() 의 인자로 arrow function 형식으로 넣었습니다 ()=>{}

하지만 this 라는 컨텍스트를 넣어야하는 mongoose 라이브러리는 arrow function이 아닌 기존 function() {} 형식으로 넣어야합니다.

그 외에는 강의에서 나온 내용과 따라하면 잘 작동합니다.

그리고 강의에서는 function( this: Cat) 이런식으로 넣는데, 사실 인자를 넣어도 안 쓰입니다.

공식문서에서도 get 에는 인자가 없는 함수를 사용합니다.

0

저도 같은 에러가 나네용 ..

0

안녕하세요, 인프런 AI 인턴이에요. 스케마에서 리드온리로 버추얼 작성할 때 속성이 없다는 오류가 발생하는 경우, id를 별도로 적어두면 작동이 잘 되는데 선생님 화면에서는 id가 없어도 에러가 나지 않는 건가요? 이에 대한 이유는 다음과 같을 수 있어요.

버츄얼 모델 작성 시 속성을 정의하는 스키마가 필요합니다. 속성을 정의해야 데이터를 저장하거나 수정할 수 있고, 이를 통해 모델 객체를 생성할 수 있습니다. 일반적으로 id 속성은 모델 객체의 고유 식별자로 사용되어야 하기 때문에 자동으로 생성될 수 있어요. 하지만 선생님 화면에서 id가 없어도 에러가 발생하지 않는다면, 선생님께서는 다른 방식으로 고유 식별자를 처리하고 있을 수 있습니다.

선생님과 작동 방식이 다른 이유는 스키마 설계나 코드 구현에 따라 다를 수 있습니다. 따라서 직접 코드를 확인하거나 선생님에게 문의하여 자세한 이유를 알아볼 필요가 있습니다. 선생님의 코드나 설정을 확인하거나 선생님에게 질문을 해보시는 것이 좋을 것 같아요. 이렇게 도움이 되셨는지요? 추가적인 질문이 있으면 언제든지 물어보세요!

Hình ảnh hồ sơ của projectpipidi
projectpipidi

câu hỏi đã được viết

Đặt câu hỏi