Rails response_with некорректно работает с json - PullRequest
2 голосов
/ 05 февраля 2011

Я пытаюсь обновить запись удаленно (через ajax) и получить ответ, содержащий сериализованную запись, но я постоянно получаю xhr.responseText = {}.Я хотел бы получить сериализованную версию обновленной записи.

Вот моя форма просмотра ...

=semantic_form_for theme, :html => {'data-type' => 'json', :id => :theme_display_type_form, :remote => true} do |form|
    -form.inputs do
        =form.input :display_type

Контроллер, который обрабатывает ...

respond_to :html, :json

... other actions...

def update
   flash[:success] = "Theme was successfully updated" if theme.update_attributes params[:theme]
   respond_with(theme)
end

и затем ответ перехватывается в rails.js ajax: событие успеха

$('#theme_display_type_form').bind('ajax:success', function(evt, data, status, xhr){
   var responseObject = $.parseJSON(xhr.responseText);
   alert(xhr.responseText); // = {}
   alert(responseObject); // = null
});

Я должен что-то упустить.Может кто-нибудь сообщить мне, что я делаю неправильно?


РЕДАКТИРОВАТЬ

Похоже, у меня может быть проблема с ' response_with ', поскольку использование старого метода response_to в моем контроллере работает должным образом ...

def update
   flash[:success] = "Theme was successfully updated" if theme.update_attributes params[:theme]
   respond_to do |format|
      format.json { render :json => theme }
   end
end

У кого-нибудь есть идеи, почему response_with не работает должным образом?1028 *

в соответствии с публикацией маяка на https://rails.lighthouseapp.com/projects/8994/tickets/5199-respond_with-returns-on-put-and-delete-verb

это нормально, что ОБНОВЛЕНИЕ не вернет никакого объекта, так как у вас уже есть объект в вашем распоряжении ..

1 Ответ

0 голосов
/ 03 апреля 2011

У меня проблемы с response_with, но response_to работает правильно.

Я вижу это в POST (создать). Похоже, что response_with работает иногда ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...