Я новичок в SpringBoot / Angular4, и я застрял на функции уже несколько дней, и я надеюсь, что вы, люди, можете мне помочь.
Так вот в чем дело: у меня есть сущность Reservation
(бронирование на английском языке) и организация Voyage
(путешествие на английском языке) , где класс Reservation
имеет внешний ключ (Voyage_id
).Поэтому я хочу заказать поездку (сопоставление OneToMany) , но я не совсем понимаю, как это сделать.
Вот мой контроллер для Reservation
в SpringBoot
@RequestMapping(value = "/postReservation/{id}", method = RequestMethod.POST)
public ResponseEntity<Reservation> createReservation(@PathVariable("id") int id, @RequestBody Reservation newReservation) {
Reservation reservData = reservationRepository.findOneVoyageBy(id);
reservData.setVoyage_id(newReservation.getVoyage_id());
Reservation reservDone = reservationRepository.save(reservData);
return new ResponseEntity<>(reservDone, HttpStatus.OK);
//return new ResponseEntity<Reservation>(reservationservices.save(newReservation), HttpStatus.CREATED);
}
Мой класс обслуживания в Angular 4:
@Injectable()
export class ReservationService {
private headers = new Headers({'Content-Type': 'application/json'});
private options = new RequestOptions({headers: this.headers});
constructor(private http: Http) { }
createReservation(id: number, value: any):Observable<Object> {
return this.http.post(AppComponent.API_URL + '/reservation/postReservation' + id, value)
.map(resp => resp.json());
}
Функция My Component.ts:
save(reserv){
this.reservationService.createReservation(reserv.id,
{
voyage: reserv.voyage
}).subscribe(data => {
console.log(data);
reserv = data as Reservation;
}, (error) => {
console.log(error);
});
}
Чтобы четко объяснить, что я хочу, вы увидите в выводе нижесписок доступных Вояжей (Travels) .Когда я нажимаю на кнопку с красным кружком, я хочу сохранить в Reservation
классе id
путешествия, на который я нажал.
Так вот моя проблема.Надеюсь, я дал понять, я надеюсь, что вы, ребята, можете мне помочь.
РЕДАКТИРОВАТЬ: Со всем выше, когда я нажимаю на кнопку, это говорит мне что-то вроде
Cannot read property 'id' of undefined
Что я понялэто то, что он не может получить id
Путешествия, на который я нажал.
Заранее спасибо