我正在尝试将一些数据播种到数据库中。种子文件用Typescript编写,然后编译成Javascript以运行knex。当我尝试运行种子文件时,出现标题中列出的错误。
let originalString = "Maggie's"
let escapedString = originalString.addingPercentEncoding(withAllowedCharacters: .alphanumerics)
print(escapedString) // Optional("Maggie%27s")
错误本身表明代码没有种子函数,我尝试过更改JS文件本身而不是编译TS文件,还尝试了多种返回连接的方法。
这是我编写的TS文件(seed.ts);
Error: Invalid seed file: seed.js must have a seed function
这是compiling(seed.js)的输出;
const {
patientData, gpData, ailmentData, surgeryData,
} = require('../data/index.js');
const seed = (knex: any, Promise: any) => knex.migrate
.rollback()
.then(() => knex.migrate.latest())
.then(() => {
const surgeries = knex('surgeries')
.insert(surgeryData)
const patients = knex('patients').insert(patientData).returning('*');
const gps = knex('gps').insert(gpData).returning('*')
return Promise.all([surgeries,patients, gps])
})
.then(([patients, gps]) => {
console.log(patients, '<-- patients')
console.log(gps, '<-- GPs')
// const ailments = knex('ailments').insert
// (ailmentData).returning('*')
return knex('surgeries', 'gps', 'patients')
.returning('*')
})
答案 0 :(得分:0)
我需要按照以下步骤将TS文件中的sudo mysql
更改为const
。
exports