I have two models which is reference with One-to-One relation.
@Entity()
class Restaurant {
@PrimaryGeneratedColumn()
id: number;
@Column({
type: 'varchar',
length: 1000,
unique: true
})
name: string;
@Column()
@OneToOne(() => RestaurantType)
@JoinColumn()
restaurantType: RestaurantType;
}
@Entity()
class RestaurantType {
@PrimaryGeneratedColumn()
id: number;
@Column({nullable: false})
resturantType: string;
@Column({
type: 'time with time zone',
default: Date.now()
})
createdAt: Date;
}
But I am seeing this error when running the server,
DataTypeNotSupportedError: Data type "RestaurantType" in "Restaurant.restaurantType" is not supported by "postgres" database.
Why is this happening ?
You should remove @Column() decorator from restaurantType property of Restaurant entity.
@Entity()
class Restaurant {
@PrimaryGeneratedColumn()
id: number;
@Column({
type: 'varchar',
length: 1000,
unique: true
})
name: string;
@OneToOne(() => RestaurantType)
@JoinColumn()
restaurantType: RestaurantType;
}
For additional information about OneToOne relations please refer to the docs.