[英]How to update reference object in Spring-data rest?
示例:課程和教師有多對一的關系,如何通過Spring-data rest改變某個課程的老師?
GET http://localhost:7070/study-spring-data/course/2
響應:
{
"name" : "CSCI-338 Hardcore Java",
"_links" : [ {
"rel" : "course.Course.teacher",
"href" : "http://localhost:7070/study-spring-data/course/2/teacher"
}, {
"rel" : "self",
"href" : "http://localhost:7070/study-spring-data/course/2"
} ]
}
GET http://localhost:7070/study-spring-data/course/2/teacher
響應:
{
"_links" : [ {
"rel" : "course.Course.teacher",
"href" : "http://localhost:7070/study-spring-data/course/2/teacher/1"
} ]
}
如上所示,課程2與教師1相關,如何將教師改為教師2?
我試過了:
成功更新課程名稱:
PUT http://localhost:7070/study-spring-data/course/2
with payload
{
"name" : "CSCI-223 Hardcore C++",
}
嘗試更新參考對象教師時失敗 :
PUT http://localhost:7070/study-spring-data/course/2/teacher
有效載荷
{
"_links" : [ {
"rel" : "course.Course.teacher",
"href" : "http://localhost:7070/study-spring-data/course/2/teacher/2"
} ]
}
謝謝!
這樣的事情怎么樣:
curl -v -X PUT -H "Content-Type: text/uri-list" \
-d "http://localhost:7070/study-spring-data/teacher/1" \
http://localhost:7070/study-spring-data/course/123/teacher
這是O'Reilly的Spring Data書中提出的一種方式。
我想你應該檢查Cascading for Course。 因為如果您要更新課程,那么如果要為您的課程分配級聯更新或全部,它也應該更新您的老師。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.