簡體   English   中英

灰燼數據:DS.attr(“ number”)應該如何工作?

[英]Ember-data: How DS.attr(“number”) is supposed to work?

我正在使用DS.RESTAdapter,服務器上的php。 我有一個模型UacList:

DS.Model.extend({
    dummyFieldForErrors: DS.attr("string"),
    selected: DS.attr("number"),
    uacs: DS.hasMany("uac")
});

Ember發送請求GET / rest / uacLists / 1。 服務器響應為:

{
    "uacList":{
        "id":1,
        "selected":32483,
        "uacs":[33618,9678,...,33656]
    },
    "uacs": [...]
}

但是Ember Inspector告訴我,selected是未定義的(其他屬性具有根據服務器響應應具有的值)。 無論是否使用引號(“ selected”:“ 32483”)或不使用引號(“ selected”:32483),它始終是未定義的。 如果我將此屬性定義為字符串,則可以使用,但是我不喜歡將整數定義為字符串。

這只是一個評論,但我的代表還不夠好。 我想,既然在值是字符串的情況下已經可以正常工作了,那么這沒什么問題,但是您是否不需要以大寫形式定義DS?

只需在這里閱讀文檔: http : //emberjs.com/api/data/classes/DS.html#method_attr

默認情況下,屬性按原樣傳遞,但是您可以指定可選類型以自動轉換值。

因此,對我而言,這意味着您不應為selected屬性使用'number''string'

DS.Model.extend({
    dummyFieldForErrors: DS.attr("string"),
    selected: DS.attr(),
    uacs: DS.hasMany("uac")
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM