sub*_*ing 10 javascript ember.js
我正在使用Ember.js中的表单,我想检索所有模型属性的列表,以便我可以在不同时刻拍摄表单状态的快照.有没有办法获得模型的所有属性列表?
例如,如果我的模型是:
App.User = DS.Model.extend({
name: DS.attr('string'),
email: DS.attr('string'),
current_password: DS.attr('string'),
password: DS.attr('string'),
password_confirmation: DS.attr('string'),
admin: DS.attr('boolean'),
}
Run Code Online (Sandbox Code Playgroud)
然后我想有这样的事情:
> getEmberProps('User')
["name", "email", "current_password", "password", "password_confirmation", "admin"]
Run Code Online (Sandbox Code Playgroud)
pio*_*rze 17
您可以在模型上使用toJSON方法并从对象获取密钥.
Ember.keys(model.toJSON())
Run Code Online (Sandbox Code Playgroud)
请注意,不会返回关系的键.
您也可以使用以下
网址
:http : //emberjs.com/api/data/classes/DS.Model.html#property_attributes http://emberjs.com/api/data/classes/DS.Model.html#method_eachAttribute
Ember.get(App.User, 'attributes').map(function(name) { return name; });
Ember.get(userInstance.constructor, 'attributes').map(function(name) { return name; });
Run Code Online (Sandbox Code Playgroud)
关系也有相似的属性。