나는 calorie counter에서 일하고 있는데 새로운 레시피를 만들 수 있지만 성분을 업데이트하는 데 문제가 있습니다.하위 객체를 mql로 업데이트하는 방법
내가 다음 MQL와 성분 만들 수 있습니다 : 나는 성분의 측정을 변경하는 경우에는
{
id: recipeId,
'/food/recipe/ingredients': {
create: 'unless_exists',
id: null,
quantity: parseFloat(row.$quantity.val()),
unit: {
id: row.$units.val()
},
ingredient: {
id: row.ingredientId
}
}
}
을, 2 ~ 3 컵에서,이 쿼리는 새로운 성분을 만들 것이라고 말했다. 나는 입장을 업데이트하려고 노력해 왔습니다. 지금까지 나는 시도했다 : 이것은 오류가 발생
{
connect: 'update',
id: row.rowId,
type: '/food/recipe_ingredient',
quantity: parseFloat(row.$quantity.val()),
unit: {
id: row.$units.val()
},
ingredient: {
id: row.ingredientId
}
}
을 : Can't use [], [{}] or {} in a write
.
{
connect: 'update',
id: row.rowId,
type: '/food/recipe_ingredient',
quantity: parseFloat(row.$quantity.val())
}
결과는 Can't use 'connect' at the root of the query
입니다.
{
id: recipeId,
'/food/recipe/ingredients': {
connect: 'update',
id: row.rowId,
type: '/food/recipe_ingredient',
quantity: parseFloat(row.$quantity.val())
}
}
오류 : Can't use 'connect': 'update' on a non-unique master property
가 표시됩니다. 오류에
{
id: row.rowId,
type: '/food/recipe_ingredient',
quantity: {
connect: 'update',
value: parseFloat(row.$quantity.val())
}
}
결과 : This value is already in use. Please delete it first.
새로운 하나를 기존 성분을 삭제하고 추가 할 수있는 유일한 방법인가? 는 "하위 객체"하지
{
id: recipeId,
'/food/recipe/ingredients': {
connect: 'delete',
id: row.rowId
}
}
어떤 언어를 사용하고 있습니까? parseFloat()와 $ quantity는 MQL 표현식이 아닙니다. CVT가 어떻게 연결되는지 이해하지 않고 CVT를 조작하려고하는 것 같습니다. –
저는 javascript와 그 값에 대한 역 참조 (dereference)로 질의를 작성하고 있습니다. 이들은 쓰기 엔드 포인트로 전달되지 않습니다. – Will