0

我的视图中有这个电话:

    $.ajax({
      type: "GET",
      url: "/appointments",
      data: "dog_id="+ dog_id
    });

我的路线:

match '/appointments',  to: 'appointments#index', via: 'get'

控制器动作:

def index
        @appointments = Appointment.where("dog_id = ?", params[:dog_id])
        @appointments = Appointment.all
    end

这两种解决方案都不起作用。当我尝试从约会中获取事件时,我收到一条消息:

undefined method `each' for nil:NilClass

我正在尝试在 View 中获取所有约会:

<% @appointments.each do |appointment| %>

任何想法这段代码有什么问题?

4

1 回答 1

0

对于此 ajax 调用,json 返回一个数据,为此您无法直接在 rails 中访问

所以你可以试试这样的代码,

$.ajax({
  type: "GET",
  url: "/appointments",
  dataType: "json",
  data: "dog_id="+ dog_id,
  success:function(data){
     alert(data);
   }
});

'data' 像 [object Object] 一样返回,您可以循环它并获取实例值

前任

成功(数据){
var x = new Array();
alert("创建了新数组");
for (var i=0;i {
x[i] ,x[data[i].toString()]=function(){};
} }

x 现在返回一个实例变量值,您可以在视图中访问它。

于 2013-10-15T11:13:54.933 回答