2017-07-27 51 views
0

想象一下,我有我的DB一個名爲 '匹配' 的表,我儲存:REST API是否可以返回數據庫上不存在的屬性值?

  • ID
  • round_id
  • 得分
  • 起始日期
  • END_DATE

當我的REST API在端點/匹配上返回JSON我必須強制返回數據庫中存在的字段/列或者我可以ret甕一些像這樣的自定義字段:

{id: 1, is_over: true, no_goals: false} 

此外,該表match只有與round表關係,而round表中有season具有與competition表關係的關係。

在/ matchs端點json中,我可以返回competition數據direclty嗎?事情是這樣的:

/配襯:

{id: 1, is_over: true, no_goals: false, competition: { id: 2, name: 'foo',...}} 
+0

人們甚至會知道你要返回不在數據庫中的字段嗎? – jwodder

回答

1

這是你的API。你可以隨心所欲地做任何事情!

0

當您使用REST API時,您將使用數據。 在這種情況下,您仍然使用數據,只需添加不在您數據庫中的新字段。 所以有可能,這樣做可以,不會中斷REST API模型。很多人做的一件事就是爲自己的請求注入新的字段,如自定義http代碼或自定義消息。

而對於比賽,你可以這樣做

所以一切都好!

+0

謝謝@sheplu!還有關於如何根據REST模型返回深層父母關係的信息?我知道一個簡單的父/子關係,我應該在我的API查詢參數中使用_expand/_embed。但那些深深的關係,沒有一個FK直接我不知道。 –

+0

完全取決於你如何實現你的API。可能只是您的網址或正文請求中的參數。關於如何做到這一點,沒有「最佳做法」。 但是如果你總是發回你的競賽數據,你不需要在你的URL中指定你想要的數據,因爲你總是會發送它們 – sheplu

相關問題