Skip to content

基本操作

ts
const photoRepository = AppDataSource.getRepository(Photo);
// 查所有
await photoRepository.find();
// 条件查询第一个
await photoRepository.findOneBy({ id: 1 });
// 条件查询所有
await photoRepository.findBy({ isPublished: true });
// 查询实体、数量
const [photos, count] = await photoRepository.findAndCount();
// 取出关系对象的数据,取出的数据会包含 一对一关系的数据
await photoRepository.find({
  relations: {
    metadata: true
  }
});
// 取出关系对象的数据,取出的数据会包含 metadata
await photoRepository
  .createQueryBuilder('photo')
  .innerJoinAndSelect('photo.metadata', 'metadata')
  .getMany();

typescript
// 创建一条新数据
const photo = new Photo();
photo.name = 'limy';
photo.description = 'I am near polar bears';
photo.filename = 'photo-with-bears.jpg';
photo.isPublished = true;

/**
 * 方式一:使用 Entity Manager
 */
await AppDataSource.manager.save(photo);
/**
 * 方式二:Using Repositories
 */
const photoRepository = AppDataSource.getRepository(Photo);
await photoRepository.save(photo);

typescript
import { Photo } from './entity/Photo';
import { AppDataSource } from './index';

const photoRepository = AppDataSource.getRepository(Photo);
const photoToUpdate = await photoRepository.findOneBy({
  id: 1
});
photoToUpdate.name = 'Me, my friends and polar bears';
await photoRepository.save(photoToUpdate);

typescript
import { Photo } from './entity/Photo';
import { AppDataSource } from './index';

const photoRepository = AppDataSource.getRepository(Photo);
const photoToRemove = await photoRepository.findOneBy({
  id: 1
});
await photoRepository.remove(photoToRemove);