Присоединенный столбец является нулевым для отношений OneToMany - PullRequest
0 голосов
/ 19 декабря 2018

Я пытаюсь создать отношения между гостиничными номерами, в которых после звонка я пытаюсь передать массив номеров.Надеясь спасти комнату в контроллере.Проблема, с которой я сталкиваюсь сейчас, заключается в том, что, когда я звоню / newhotel, отель сохраняется, а связанные с ним номера сохраняются.Но у этих номеров есть свой hotel_id NULL.Почему связь не была создана во время сохранения комнаты?

public class Hotel {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    private String name;

    @OneToMany(mappedBy = "hotel", cascade = CascadeType.ALL)
    private List<Room> rooms;

}

public class Room {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @ManyToOne
    @JoinColumn(name = "hotel_id")
    private Hotel hotel;

    @Enumerated(EnumType.STRING)
    private RoomType roomType;
}

@RestController
public class HotelController {
    @Autowired
    HotelRepository hotelRepository;
    @Autowired
    RoomRepository roomRepository;
    @CrossOrigin
    @PostMapping(value = "/newhotel")
    public Hotel addHotel(@RequestBody Hotel hotel) {
        return hotelRepository.save(hotel);
    }
}

Ниже приведено тело запроса почтового вызова:

{
    "name" : "hotel1",
    "rooms" : [
              {
                "roomType" : "SingleBed"
              } 
    ]
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...