पर बाध्यकारी है, मैं एक जटिल जेसन ऑब्जेक्ट (नेस्टेड गुणों के साथ) को ग्रिडपेनल के कॉलम मॉडल में बांधने की कोशिश कर रहा हूं। आईई:एक्सटी जेएस - कॉलम मॉडेल एक जटिल जेसन ऑब्जेक्ट
> {
> "success": true ,
> "total": "1",
> "result":
> {
> "report": {
> "customer_name": "cust one",
> "account_number": "",
> "report_data": {
> "detail": "these are details",
> "desc": "mydesc"
> }
> }
> } }
कुछ तो मेरे columnmodel होगा
तरहvar colModel = new Ext.grid.ColumnModel([
{header: "Customer", sortable: true, dataIndex: 'customer_name'},
{header: "Account", width: 75, sortable: true, dataIndex: 'account_number'},
{header: "Detail", width: 75, sortable: true, dataIndex:'HOW DO I DO THIS'}
]);
मैं: मैं, कहते हैं, report.customer_name और report.report_data.customer.desc परीक्षण डाटा के लिए ग्रिड स्तंभों मैप करना चाहते हैं विस्तार कॉलम के डेटा इंडेक्स को 'report_data.details' के रूप में आजमाया लेकिन यह काम नहीं किया ...
क्या कोई मुझे बता सकता है कि यह किया जा सकता है, और यदि ऐसा है, तो मुझे एक उदाहरण फेंक दें? या क्या मुझे इसे पढ़ने से पहले ऑब्जेक्ट को 'फ़्लैटन' करने की आवश्यकता है? बहुत बहुत धन्यवाद!
new Ext.data.JsonReader({
root: 'result',
totalProperty: 'total',
fields: [
{name: 'customer_name'},
{name: 'account_number'},
{name: 'detail', mapping: 'report_data.detail'}
]
});
आपके कॉलम मॉडल तो के लिए 'विस्तार' का संदर्भ होगा एक dataIndex:
सही धन्यवाद आपकी मदद :) – 29er
सर्वर एक अशक्त report_data है क्या हुआ अगर के लिए बहुत कुछ: ऊपर पाठक फार्म के एक डेटा वस्तु का उपभोग होगा? ऐसा लगता है कि यह स्टोर ब्रेक करता है। कोई उपाय ? – jujule
@jujule आप दाता चाल के साथ "हैक" यह कर सकते हैं: '' 'जावास्क्रिप्ट समारोह get_report_data (report_data) { if (! Report_data = नल) { वापसी report_data.detail; } वापसी "" } '' ' और फिर ग्रिड में: ' '' जावास्क्रिप्ट {पाठ: "विस्तार", रेंडरर: get_report_data, dataIndex: 'report_data'} '' ' सवाल यह है: क्या यह सही तरीका है? –