В настоящий момент я попробовал реализовать связь Модели Django с Ext DirectStore. На стороне клиента у меня получился примерно такой код:
var reader = new Ext.data.JsonReader({
totalProperty: 'total',
successProperty: 'success',
idProperty: 'id',
root: 'records'
}, [
{name: 'body'},
{name: 'title'},
{name: 'id'},
в идеальной реализации эти поля не заполняются и JsonReader использует MetaData из JSON.
]);
var store = new Ext.data.DirectStore({
paramsAsHash: true,
api: {
read: Document.objects.all,
create: // функция сохранения объекта модели(рекорда Store) в БД
update: // функция обновления объекта модели(рекорда Store) в БД
delete: // функция удаления объекта модели(рекорда Store) из БД
},
autoSave: true,
reader: reader,
writer: //тут надо определить правильный writer
});
store.load();
На стороне сервера сейчас:
@remoting(documents_remote_provider, action='objects', len=1)
def all(request):
data = request.extdirect_post_data[0]
docs = ExtDirectStore(Document)
return docs.query(**data)
Т.е. по сути хочется, чтобы я на стороне сервера создавал, например, объект ExtDirectStore(Model),
который при этом создавал бы объект DirectStore, который бы мог CRUD объекты Model без написания дополнительной обвязки на стороне сервера, а использовал бы методы класса Model.