Sequelizejs를 사용하면 개체 자체가 저장 될 때 개체 연결을 저장하는 방법이없는 것처럼 보입니다.Sequelizejs에 연결이있는 개체 저장
예를 들어 하나 이상의 phoneNumber를 가질 수있는 연락처가 있습니다.
global.db.Contact.hasMany(global.db.PhoneNumber, {as: 'phoneNumbers'});
내가 (모든 제공된 전화 번호와 함께) 새 연락처 개체를 게시하고 데이터베이스에 저장하고 싶은 나머지 엔드 포인트를 사용 : 현재 내가 협회에 대해이 같은 있습니다.
var contact = Contact.build(req.body);
을 그리고 내가 저장/대신 빌드의 생성 사용할 수 있습니다 알고 있지만 우리는이 (저장 전화 :
{
firstName: "john",
lastName: "Doe",
phoneNumbers: [
{ number: "555-555-5555", type: "home" }
]
}
가 지금 내가 구축이 개체를 전달할 : 내 요청 객체는 다음과 같이 보입니다 수정 된 데이터를 추적하기위한 저장의 사용자 정의 논리 및 수정 한 사용자)
contact.save();
이렇게하면 다음과 같은 오류가 발생합니다.
column "phoneNumbers" of relation "Contacts" does not exist
sql 호출이 존재하지 않는 "phoneNumbers"열의 값을 설정하려고합니다. 분명히 그렇게하고 싶지는 않습니다 ... 나는 만들고있는 연락처 ID로 배열의 각 phoneNumber를 대량으로 생성하고 싶습니다.
내가 발견 한 유일한 예는 다음과 같습니다. https://gist.github.com/sdepold/3040391 그리고 저는 이것을 정말로하고 싶지 않습니다 ... 휴식 종점에서 왔기 때문에이 작업을 일반적으로 할 수있는 방법을 원합니다. 협회가있는 여러 모델이 있음). 또한이 작업을 일괄 처리 (다른 소스에서 연락처 가져 오기) 할 수 있어야하므로 SQL 호출이 최소화되는 것이 좋습니다. 누구든지 좋은 방법을 찾았습니까?
나는 똑같은 질문을 가지고있다. 이것에 대한 답을 찾았습니까? 나는 여전히 1.7의 후유증을 앓고있다. – optimusPrime
나는 우아한 해결책을 찾지 못했습니다. 이후 Sequelize를 사용하지 않는 다른 프로젝트로 옮겼습니다. – Nova706