api-platform / api-platform/admin

snake_case_param_names in a filter and order while API expects CameCase

Open
#166 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
516
Forks
134
PR merge metrics
No merged PRs in 30d

Description

If entities are using camel case names, then api-platform expects get requests with filters like /?yourCamelCaseFieldValue=somevalue&order[anotherCamelCaseFieldValue]=ASC.

But in the code there no conversion.

`case GET_LIST: {
const {
pagination: {page, perPage},
sort: {field, order},
} = params;

if (order) collectionUrl.searchParams.set('order[${field}]', order);
if (page) collectionUrl.searchParams.set('page', page);
if (perPage) collectionUrl.searchParams.set('perPage', perPage);
if (params.filter) {
Object.keys(params.filter).forEach(key => {
const filterValue = params.filter[key];
if (!isPlainObject(filterValue)) {
collectionUrl.searchParams.set(key, params.filter[key]);
return;
}

Object.keys(filterValue).forEach(subKey => {
collectionUrl.searchParams.set(
'${key}[${subKey}]',
filterValue[subKey],
);
});
});
}`

_Originally posted by @DenisVorobyov in https://github.com/api-platform/admin/issues/162#issuecomment-479862778_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.