我正在使用2.3中由Grails引入的REST支持。我的應用程序包括以下領域類:嵌套的RESTful資源
@Resource(formats=['json', 'xml'])
class Sensor {
String name
static hasMany = [metrics: Metric]
}
@Resource(formats=['json', 'xml'])
class Metric {
String name
String value
static belongsTo = [sensor: Sensor]
}
而在UrlMappings.groovy
我已經定義了下面的嵌套REST風格的URL映射:
"/api/sensors"(resources: 'sensor') {
"/metrics"(resources: "metric")
}
如果我瀏覽到URL /api/sensors/1/metrics
我期待的迴應,顯示所有與相關聯的Sensor
ID爲1 Metric
實例,但事實上它返回所有Metric
實例(最多爲10的極限)
- 是否有URL只返回
Metric
與特定Sensor
實例關聯的實例(無需實現自己的控制器)? - 有沒有辦法覆蓋10個結果的默認限制(無需向請求添加
max
參數)?
關於在使用資源時更改限制,答案是否定的。這裏已經有關於此的討論。這種設計選擇背後的原因是Resource的設計是快速和簡單的,生成和修改控制器作爲下一級定製。我以前對此的回答指向了Grails源代碼,以證明Resource不允許此自定義。 –
http://stackoverflow.com/questions/22336804/change-default-for-max-attribute-on-results-for-resource-on-domain-classes-for/22337550#22337550 –
@JoshuaMoore謝謝,你知道嗎如果有可能爲單個「傳感器」實例獲取「Metric」實例? –