meta #
WARNING
This will no longer receive updates in favor of metaQuery
Demo #
Date meta functions correctly #
js
const dictionary = {
birthdate: 'users.birthdate'
}
const result = knex('users')
.meta({
dateBy: 'birthdate',
dateFrom: '1998-07-29',
dateTo: '1998-07-29',
dateDictionary: dictionary
})
.toString()
sql
SELECT
*
FROM
`users`
WHERE
`users`.`birthdate` >= '1998-07-29 00:00:00'
AND `users`.`birthdate` <= '1998-07-29 23:59:59'
Page meta functions correctly #
js
const result = knex('users')
.meta({
page: 3,
rows: 50
})
.toString()
sql
const expected = 'select * from `users` limit 50 offset 100'
Sort meta functions correctly #
js
const dictionary = {
birthdate: 'users.birthdate'
}
const result = knex('users')
.meta({
sort: 'asc',
sortBy: 'birthdate',
sortDictionary: dictionary
})
.toString()
sql
const expected = 'select * from `users` order by `users`.`birthdate` asc'
Filter meta functions correctly #
js
const dictionary = {
birthdate: 'users.birthdate'
}
const result = knex('users')
.meta({
filterBy: 'birthdate',
q: 'july',
filterDictionary: dictionary
})
.toString()
sql
SELECT
*
FROM
`users`
WHERE
`users`.`birthdate` LIKE '%july%'
All meta functions correctly #
js
const dictionary = {
birthdate: 'users.birthdate'
}
const result = knex('users')
.meta({
dateBy: 'birthdate',
dateFrom: '1998-07-29',
dateTo: '1998-07-29',
dateDictionary: dictionary,
page: 3,
rows: 50,
isCount: false,
sort: 'asc',
sortBy: 'birthdate',
sortDictionary: dictionary,
filterBy: 'birthdate',
q: 'july',
filterDictionary: dictionary
})
.toString()
sql
SELECT
*
FROM
`users`
WHERE
`users`.`birthdate` >= '1998-07-29 00:00:00'
AND `users`.`birthdate` <= '1998-07-29 23:59:59'
AND `users`.`birthdate` LIKE '%july%'
ORDER BY
`users`.`birthdate` asc
LIMIT
50
OFFSET
100