Rails Active Admin - пост Ajax подписывает меня? - PullRequest
0 голосов
/ 02 декабря 2011

На одной из моих Active Admin страниц индекса я перечисляю некоторые записи в таблице.

Я добавил jQuery sortable плагин, чтобы иметь возможностьсортировать записи, перетаскивая элементы по вертикали.Это работает нормально, и атрибут позиции для каждой записи корректно обновляется (через ajax).

Хотя, если я обновлю Active Admin после вызова ajax, я выйду из системы и должен войти в системуснова.

Ajax отправляет эти данные:

faq[]=1&faq[]=3&faq[]=2

Метод сортировки:

  def sort
    params[:faq].each_with_index do |id, index|
      Faq.update_all({position: index+1}, {id: id})
    end
    render nothing: true
  end

Ответ ajax пуст и не дает никаких исключений.

Почему я вышел?

1 Ответ

0 голосов
/ 03 декабря 2011

Мне почему-то пришлось добавить X-CSRF-Token в заголовки ajax.Я не уверен почему.Разве rails.js не может сделать это для меня?

Рабочий раствор:

  $.ajax({
    url: "/faqs/sort",
    type: "post",
    beforeSend: function(xhr) {
      xhr.setRequestHeader('X-CSRF-Token', $('meta[name="csrf-token"]').attr('content'));
    },
    data: $(this).sortable('serialize')
  });
...