我有三张桌子:
Employee (emp_id,name)
Projects (pid,proj_status)
Project_Allocation (pid,emp_id)
找到属于我项目的人:
我有我的名字,我查询我的emp_id
2.使用我的emp_id,我从Project_Allocation(已完成的项目)查询(withRelated)我的所有项目,并在项目上定义了belongsTo关系
然后我选择状态为“LIVE”的项目的pid
4.现在我在Project_allocation中选择所有具有此pid的模型。
我遇到的问题是为Project和Project_Allocation表创建模式时。两者都需要彼此,我不能加载它们。请建议我如何重写这个。
以下是一些摘录:
Project_Allocation文件:
var Project = require('./project');
var PASchema = Bookshelf.Model.extend({
tableName: 'project_allocation',
project: function(){
return this.belongsTo(ProjectSchema, 'pid')
}
项目文件:
var ProjAlloc = require('./projAlloc');
var ProjectSchema = Bookshelf.Model.extend({
tableName: 'project',
idAttribute: 'pid',
allocatedIDs: function() {
return this.belongsTo(PASchema,'pid')
}
答案 0 :(得分:0)
问题在于require
。那里造成了僵局。我在一个单独的文件中定义了我的每个表,并require
将它们定义在其他表定义中(即其他文件)。将所有表定义写在一个文件中,然后导出该对象就可以了。