0

我正在尝试查询相关表的 SQL Server 数据库并返回数据。诸如人员、地址和订单表之类的东西都由 personId 连接。我将如何使用模型检索这些数据?

4

1 回答 1

1

TodoList 示例是模型之间关系遍历的演示。请参阅存储库https://github.com/strongloop/loopback-next/tree/master/examples/todo-list

和教程https://loopback.io/doc/en/lb4/todo-list-tutorial.html

在示例中,建立了两个关系:模型TodoListhasManyTodoTodobelongsTo 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 回答