-
-
Notifications
You must be signed in to change notification settings - Fork 785
Open
Description
Steps to reproduce
created a fresh application with existing mssql database. Created a model via cli
// // For more information about this file see https://dove.feathersjs.com/guides/cli/service.schemas.html
import { resolve } from '@feathersjs/schema'
import { Type, getValidator, querySyntax } from '@feathersjs/typebox'
import type { Static } from '@feathersjs/typebox'
import type { HookContext } from '../../declarations'
import { dataValidator, queryValidator } from '../../validators'
import type { ObjectsService } from './objects.class'
// Main data model schema
export const objectsSchema = Type.Object(
{
id: Type.String(),
field: Type.String()
},
{ $id: 'Objects', additionalProperties: true }
)
export type Objects = Static<typeof objectsSchema>
export const objectsValidator = getValidator(objectsSchema, dataValidator)
export const objectsResolver = resolve<Objects, HookContext<ObjectsService>>({})
export const objectsExternalResolver = resolve<Objects, HookContext<ObjectsService>>({})
// Schema for creating new entries
export const objectsDataSchema = Type.Pick(objectsSchema, ['field'], {
$id: 'ObjectsData'
})
export type ObjectsData = Static<typeof objectsDataSchema>
export const objectsDataValidator = getValidator(objectsDataSchema, dataValidator)
export const objectsDataResolver = resolve<Objects, HookContext<ObjectsService>>({})
// Schema for updating existing entries
export const objectsPatchSchema = Type.Partial(objectsSchema, {
$id: 'ObjectsPatch'
})
export type ObjectsPatch = Static<typeof objectsPatchSchema>
export const objectsPatchValidator = getValidator(objectsPatchSchema, dataValidator)
export const objectsPatchResolver = resolve<Objects, HookContext<ObjectsService>>({})
// Schema for allowed query properties
export const objectsQueryProperties = Type.Pick(objectsSchema, ['id', 'field'])
export const objectsQuerySchema = Type.Intersect(
[
querySyntax(objectsQueryProperties),
// Add additional query properties here
Type.Object({}, { additionalProperties: false })
],
{ additionalProperties: false }
)
export type ObjectsQuery = Static<typeof objectsQuerySchema>
export const objectsQueryValidator = getValidator(objectsQuerySchema, queryValidator)
export const objectsQueryResolver = resolve<ObjectsQuery, HookContext<ObjectsService>>({})
Expected behavior
curl -X DELETE http://localhost:3030/objects/my_id should delete the record
Actual behavior
error: GeneralError: Undefined binding(s) detected when compiling DEL. Undefined column(s): [id] query: delete from [table_name] where [id] in (?);select @@rowcount
curl -X GET http://localhost:3030/objects/my_id gives json as result
curl -X GET http://localhost:3030/objects/ gives all results from database
also post and patch works, just delete gives that error.
Metadata
Metadata
Assignees
Labels
No labels