2011-01-04 13 views
0

レコード価値を設定する際に問題に直面しています。"set()"を使用してネストされたレコードを設定する方法は?

私はこのような店舗内のレコードを入れ子にしている:

- data 
act_reading // I can set value of this record using -> record.set('act_reading', 'dsds'); 
adj_reading 
act_reading_nested 
    - data 
     arr_act_colour // How can I set this record? 
     arr_act_rating // How can I set this record? 
     arr_act_ferrous // How can I set this record? 
    idrectype1 // How can I set this record? 
adj_reading_nested 
    - data 
     arr_adj_colour 
     arr_adj_rating 
     arr_adj_ferrous 
    idrectype2 

私はact_reading_nested内idrectype1値を設定できますか?

また、arr_act_colour、arr_act_rating、& arr_act_ferrousについても同じことを行う必要があります。

私はGridPanelに非平野ストアを編集したいときに:(私は、あまりにもそのような種類の問題に直面していないことができますストアの現在の実装で私の経験から、アドバンス

答えて

1

recordがあなたのrecrdへの参照を保持していると仮定すると、それは機能しませんか?

record.get('act_reading_nested').set('arr_act_colour','value'); 
record.get('act_reading_nested').idrectype1 = 'something'; 

はいそうです。ちょうどチェックした。

0

に感謝。http://www.sencha.com/forum/showthread.php?119573-Event-beforeedit-in-EditableGridPanel&highlight=afteredit

私は自分でチェックしませんでした(むしろハック回避策を見つけました)が、もっときれいな方法は、Ext.override(Ext.Store、{...})を使って独自のStore実装で修正することです。ファクトリ。 「標準」HttpProxy実装のために私がどのように行ったかを見てください。

Ext.override (Ext.data.HttpProxy, { 
    buildUrl : function (action, record) { 
     var ret = ''; 
     if (window.location.pathname != '/') { 
      ret = window.location.pathname; 
     }; 
     return ret + Ext.data.HttpProxy.superclass.buildUrl.call(this, action, record); 
    } 
}); 

Extjの内部知識が少し必要です。

+0

なぜ店舗と何が関係がありますか? – Mchl

関連する問題