我尝试执行POST请求以将子对象(Chapter)保存到父对象(User
)上,但它不起作用。PostMapping
控制器将Body
保存到数据库中,但不与父关系一起保存(在我的例子中,类章→ user_id = null
)。
我在Postman中使用以下URL:
http://localhost:8080/api/chapters?username=admin
Content-type: application/json
Body: raw
与本机构:
x一个一个一个一个x一个一个二个x
我期望的是将子对象与父对象一起保存,这意味着使用user_id = 1
,因为现在只有一个用户(id = 1
)。
2条答案
按热度按时间a0x5cqrl1#
您必须为
@ManyToOne
Map添加级联。在您的用户@Entity
中更新此行,它将工作:第二件你可能想做的事是更新你的控制器,这样它就会为你的新章节分配用户ID,就像这样:
xuo3flqw2#
我认为你应该在
newChapter.user
字段中设置user
实体,因为它是拥有关系的Chapter
实体。OneToMany
注解中的cascade
方法只是指定了哪些操作必须级联,并不意味着Chapter
实体的user
属性会自动设置。