Javascript-форум (https://javascript.ru/forum/)
-   Backbone.js (https://javascript.ru/forum/backbone/)
-   -   Ajax запрос в Backbone.js (https://javascript.ru/forum/backbone/42580-ajax-zapros-v-backbone-js.html)

assd18 01.11.2013 12:29

Ajax запрос в Backbone.js
 
Здравтсвуйте. Помогите переделать запрос ajax jquery в Backbone. Мне бы понять суть как формируется запрос в Backbone, а то что-то в гугле ничего толкового не нашел...
Всем заранее спасибо за помощь)
$.ajax({
    	url : 'url',
    	dataType : 'json',
    	type : 'POST',
    	data : jsonText
    }).success(function(data) {	
    	
    }).error(function(data) {   
        
    });

ksa 01.11.2013 13:41

Цитата:

Сообщение от assd18
Мне бы понять суть как формируется запрос в Backbone, а то что-то в гугле ничего толкового не нашел...

$.ajax() он и в Африке $.ajax().
http://jquery-docs.ru/Ajax/jQuery.ajax/#options

assd18 01.11.2013 15:44

А как его формировать в Backbone? Может есть пример какой-то?

a_l 02.11.2013 07:17

Это jquery-запрос, backbone тут не при делах.
Хотя если сохраняете экземпляр модели, можно сделать это через this.model.save(), указав url в модели. В этом случае backbone будет творить магию.

assd18 04.11.2013 10:01

Спасибо, а можете подробнее о данном методе?

assd18 04.11.2013 15:40

Я указываю урл когда создаю модель, а потм при инициализации экземпляра указываю айди (данные по которым сервак ответит), так? Но это все происходит по GET, а как можно реализовать POST?

cryaros 03.06.2014 13:40

Например так
 
Создаешь файл модели с таким кодом

MVC.Model.Test= Backbone.Model.extend({
    url: '/your/ajax/url',
    initialize:function(params){
    },
    send: function(path, method, data){ //название может быть какое угодно
        return this.fetch({
            contentType: 'application/json',
            type:method || 'POST', //здесь можно писать и GET и POST
            cache:false,
            data: data,
            url:[this.url,path].join('/')
        });
    }
});


а в контроллере или вьюхе, там где надо вызвать этот запрос пишешь

var test = new Bacbone.Model.Test();
test.send('', 'POST', {'test': test, 'test1': test1});

Aries 10.12.2014 12:45

Переопредели Model.sync

В доке расписано что и как делать.

Я так все fetch перенес на jsonrpc

biperch 12.12.2014 03:46

this.model.save() использует REST
в селект можно так же передавать как и в обычный $.ajax любые параметры которые присутствуют в $.ajax

this.model.save({}, {type:'get', data{param1:1, param2}, ..., success:function(){}})


Часовой пояс GMT +3, время: 20:50.