Extjs 4.0 商店 - 如何在商店(或模型)中查找字段
在 Ext 3.x 中,我可以通过以下方式获取字段名称数组:
mystore.fields.keys
How can I do this in 4.0?我什至不知道如何获取商店正在使用的模型(没有“getModel”方法)。我需要找到一条记录并以这种方式获取字段吗?我用以下方式定义商店:
Ext.define('AM.store.Equipments', {
extend: 'Ext.data.Store',
model: 'AM.model.Equipment',
mycustFunc: function () {
var myfields = this.fields.keys (fails!)
编辑: 谢谢...更多地查看萤火虫,似乎这得到了我想要的:
this.model.prototype.fields.keys
In Ext 3.x I could get an array of field names with this:
mystore.fields.keys
How can I do this in 4.0? I can't even see how I can get the model that the store is using (no 'getModel' method). Do I need to find a record and get the fields that way? I define the store with :
Ext.define('AM.store.Equipments', {
extend: 'Ext.data.Store',
model: 'AM.model.Equipment',
mycustFunc: function () {
var myfields = this.fields.keys (fails!)
EDIT:
Thanks... looking in firebug more it seems like this gets what I want:
this.model.prototype.fields.keys
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
虽然 Store 本身没有
getModel()
方法,但代理保存模型,因此您可以简单地使用store.getProxy().getModel()
来获取模型,从而获取模型的字段。要复制 Store,只需使用模型:originalStore.getProxy().getModel().modelName。
While there isn't a
getModel()
method for the Store itself, the Proxy holds the Model, so you can simply usestore.getProxy().getModel()
to fetch the Model, and thereby the Model's fields. For replicating a Store, just use model:originalStore.getProxy().getModel().modelName.
我更改商店中的字段,
就像那样:
i change the fields from my store,
just like that: