J'ai la requête SQL suivante que je veux remplacer par un mappage ORM :
SELECT primeid, name
FROM primes p INNER JOIN seconds s ON s.primeid = p.primeid
WHERE s.insertdate >= '2020-01-01' and s.insertdate <= '2020-01-31'
J'ai les entités suivantes :
@Entity("primes")
export class PrimeEntity {
@PrimaryColumn({name:'primeid'})
primeId: number;
@Column()
name: string;
@OneToMany('SecondEntity','prime')
seconds: SecondEntity[];
}
@Entity("seconds")
export class SecondEntity {
@PrimaryColumn({name:'secondid'})
secondId: number;
@Column({name: 'insertdate'})
insertDate: Date;
@ManyToOne('PrimeEntity', 'seconds')
@JoinColumn('primeid')
prime: PrimeEntity;
}
Le code suivant devrait retourner presque la même chose que la requête SQL au début :
primeRepository.find({
relations: ['seconds'],
where: {
seconds: {
insertDate: Between('2020-01-01', '2020-01-31')
}
}
});
cela devrait retourner
[
PrimeEntity {primeId: 1, name: 'test', seconds: [SecondEntity {secondId: 1, insertDate: '2020-01-01'}]},
...
]
Mais au lieu de cela, je reçois le message d'erreur suivant :
EntityColumnNotFound: Aucune colonne d'entité "seconds" n'a été trouvée.
Peut-être que quelqu'un pourrait m'aider...
merci et meilleures salutations Greg