hallo zusammen, ich hab das schon 100mal gemacht, aber jetzt spinnt extJS. ich hab ein button das ein event feuert. im contoller fang ich das event ab. es soll ein neuen Eintrag in ein grid.Panel erstellt werden. ... me.control({ 'myPlugin-view-list': { 'createArticle': me.createArticle, 'deleteArticle': me.deleteArticle, 'edit': me.editArticle } }); ... var newCategory = me.getModel('List').create({ id: me.catID }); newCategory.save(); ...
das model: Ext.define('Shopware.apps.myPlugin.model.List', { extend:'Ext.data.Model', idProperty:'id', proxy: { type: 'ajax', actionMethods: [{ create: 'POST', read: 'POST', update: 'POST', destroy: 'POST'}], api: { read: '{url controller=myPlugin action=readList}', create: '{url controller=myPlugin action=createList}', update: '{url controller=myPlugin action=updateList}', destroy: '{url controller=myPlugin action=deleteList}' }, reader: { type: 'json', root: 'data' } }, fields:[{ name: 'id', type:'int' }, { name: 'name', type:'string' }] });
warum auch immer. es wird immer “/backend/myPlugin/updateList” ausgeführt. ich hab auch schon andere bezeichnungen vergeben aber es wird nie ‘create’ ausgeführt. wo ist der wurm versteckt?
Hi, sobald ein ExtJS Model eine ID zugewiesen bekommen hat, wird statt der create Url die update Url benutzt. Speicher einfach die catID in ein anderes Feld statt in das ID Feld. Gruß Oliver
1 „Gefällt mir“
genau das war’s. ich hab nun statt id eine andere bezeichnung genommen, und schon klappt’s, danke. :thumbup: