我正在尝试查询相关表的 SQL Server 数据库并返回数据。诸如人员、地址和订单表之类的东西都由 personId 连接。我将如何使用模型检索这些数据?
问问题
1468 次
1 回答
1
TodoList 示例是模型之间关系遍历的演示。请参阅存储库https://github.com/strongloop/loopback-next/tree/master/examples/todo-list。
和教程https://loopback.io/doc/en/lb4/todo-list-tutorial.html
在示例中,建立了两个关系:模型TodoList
hasManyTodo
和Todo
belongsTo TodoList
。
todos
要查询相关模型的数据,首先在 todo-list 存储库中定义关系属性:
export class TodoListRepository extends DefaultCrudRepository<
TodoList,
typeof TodoList.prototype.id
> {
public readonly todos: HasManyRepositoryFactory<
Todo,
typeof TodoList.prototype.id
>;
constructor(
@inject('datasources.db') dataSource: juggler.DataSource,
@repository.getter(TodoRepository)
protected todoRepositoryGetter: Getter<TodoRepository>,
) {
super(TodoList, dataSource);
this.todos = this._createHasManyRepositoryFactoryFor(
'todos',
todoRepositoryGetter,
);
}
}
然后你可以调用 this.todos(todoListId).find(filter) 来查询 foreignKey 等于 that 的 todo 模型实例todoListId
。
以控制器函数中如何调用关系 api 为例:https ://github.com/strongloop/loopback-next/blob/master/examples/todo-list/src/controllers/todo-list-todo.controller .ts#L61
于 2018-12-11T16:33:06.810 回答