Получить параметры из контроллера с помощью JQUERY RAILS - PullRequest
0 голосов
/ 24 октября 2019

, пожалуйста, помогите мне, я новичок в рельсах и jquery, я пытаюсь получить все значения из элемента массива #mychannels id на html, на мой взгляд.

JS AJAX

$(document).ready(function() {
  $('#mychannels').change(function () {
    $.ajax({
      type: "GET",
      contentType: "dados/json",
      url: "/suporte/chamados?empresa_id=91194",
      success: function(data){
        alert(data);
      }
    });
  });
});

Контроллер

  def get_data
    @company = Company.find(params[:company_id])
    @servers = Server.find(:all, :conditions => ["company_id = ? AND action != 3", @company.id])
    @channels_list = Channels.where("channel = 't' and company_id = 91194")

My View

<%= select_tag "mychannels",options_for_select(@channels_list.map { |e|
                                 [e.name+" - "+e.server.name, e.id]})  %>

Я пытаюсь прочитать данные, которые поступают с контроллера, выбросить вмассив и отобразить его в select_tag представления.

Не могли бы вы помочь мне с кодом

1 Ответ

3 голосов
/ 24 октября 2019

Вам нужно обновить действие контроллера, добавив метод рендеринга и добавив значения, которые вы хотите получить в обратном вызове jQuery.

Контроллер

def get_data
  @company = Company.find(params[:company_id])
  @servers = Server.find(:all, :conditions => ["company_id = ? AND action != 3", @company.id])
  @channels_list = Channels.where("channel = 't' and company_id = 91194")
  render json: { company: @company.to_json, servers: @servers.to_json, channels_list: @channels_list.to_json }
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...