尝试使用Bookshelf和mysql从两个表中获取数据,但数据仅来自第一个表
-------这里的诊所模型--------------
import bookshelf from '../config/bookshelf';
import Clinic_time from '../models/clinic_time.model';
/**
* Clinic model.
*/
class Clinic extends bookshelf.Model {
get tableName() {
return 'clinics';
}
get hasTimestamps() {
return true;
}
Clinic_time() {
return this.hasMany(Clinic_time,'clinic_id');
}
}
export default Clinic;
----------------------------------------------------------------------
import bookshelf from '../config/bookshelf';
import Clinic from '../models/clinic.model';
/**
* Clinic_time model.
*/
-------这里的诊所时间模型--------------
class Clinic_time extends bookshelf.Model {
get tableName() {
return 'clinic_times';
}
get hasTimestamps() {
return false;
}
Clinic() {
return this.belongsTo(Clinic,'id');
}
}
export default Clinic_time;
-------这里的诊所控制器--------------
export function findById(req, res) {
Clinic.forge({id: req.params.id})
.fetch({withRelated: [Clinic_time]})
.then(clinic => {
console.log(clinic);
if (!clinic) {
res.status(HttpStatus.NOT_FOUND).json({
error: true, data: {}
});
}
else {
res.json({
error: false,
data: clinic.toJSON()
});
}
})
.catch(err => res.status(HttpStatus.INTERNAL_SERVER_ERROR).json({
error: err
})
);
}
控制器响应中的仅来自诊所表,而没有来自临床时间表的数据。但是我需要同时从两个表中获取。