如何在Knex中同时使用Connection String与typeCast参数?是否可行?
Knex中能否同时使用连接字符串与typeCast参数?
可以同时使用,操作方法很简单——把连接字符串放到connection配置对象的connectionString属性里,同时在同一个对象中单独声明typeCast参数即可。
举个实际代码例子(以MySQL为例,其他数据库客户端逻辑一致):
const knex = require('knex')({ client: 'mysql', connection: { connectionString: 'mysql://用户名:密码@主机地址:端口/数据库名', typeCast: (field, next) => { // 这里写你的自定义类型转换逻辑 // 比如把MySQL的tinyint(1)转成布尔值 if (field.type === 'TINY' && field.length === 1) { return field.string() === '1'; } return next(); } } });
这种方式既保留了连接字符串的简洁性,又能通过typeCast实现自定义字段类型转换,兼顾两种配置方式的优势。
内容的提问来源于stack exchange,提问作者Dan Dart
相关产品推荐
相关产品推荐

