Javascript 获得';未定义';访问通过AJAX从Django Rest框架返回的数组中的项时

Javascript 获得';未定义';访问通过AJAX从Django Rest框架返回的数组中的项时,javascript,arrays,django,ajax,django-rest-framework,Javascript,Arrays,Django,Ajax,Django Rest Framework,我试图访问从AJAX GET请求返回给Django Rest框架的数组中的数据。然而,我不断得到未定义的,,我可以通过控制台记录数据,并查看我的索引号试图针对什么,但我没有运气。我还尝试使用JSON.parse(),但这只是抛出了一个错误 为了便于可视化,这里是console.log打印的内容: 以下是我的Javascript代码: document.querySelector('#userLists').addEventListener('click', function(event) {

我试图访问从AJAX GET请求返回给Django Rest框架的数组中的数据。然而,我不断得到未定义的
,我可以通过控制台记录数据,并查看我的索引号试图针对什么,但我没有运气。我还尝试使用
JSON.parse()
,但这只是抛出了一个错误

为了便于可视化,这里是console.log打印的内容:

以下是我的Javascript代码:

document.querySelector('#userLists').addEventListener('click', function(event) {
    if (event.target.dataset.name) {
      var listname = event.target.dataset.name
      console.log(listname);
      getTableData()
    }
})

const getTableData = function(){
  $.ajax({
      type: 'GET',
      url: '/api/uservenue/',
      data: {},
      success: function (data) {
        data.forEach(item => { 
              console.log(item.venue)
          })
          fillTable(data)
        }
      });
};

function fillTable(data)
{
  console.log(data)
  const table = document.getElementById("dashboardTableBody");
    let row = table.insertRow();
    let name = row.insertCell(0);
    name.innerHTML = data[0][1]; 
}
以下是我的DRF序列化程序:

class mapCafesSerializer(serializers.ModelSerializer):
    class Meta:
        model = mapCafes
        fields = ['id', 'cafe_name', 'cafe_address', 'description']


class UserVenueSerializer(serializers.ModelSerializer):
    venue = mapCafesSerializer()
    class Meta:
        model = UserVenue
        fields = ['id', 'list', 'venue']
这些是相关的模型:

class UserVenue(models.Model):
    venue = models.ForeignKey(mapCafes, on_delete=models.PROTECT)  
    list = models.ForeignKey(UserList, on_delete=models.PROTECT)

class mapCafes(models.Model): 
    id = models.BigAutoField(primary_key=True)
    cafe_name = models.CharField(max_length=200)
    cafe_address = models.CharField(max_length=200)
    cafe_long = models.FloatField()
    cafe_lat = models.FloatField()
    geolocation = models.PointField(geography=True, blank=True, null=True)
    venue_type = models.CharField(max_length=200)
    source = models.CharField(max_length=200)
    description = models.CharField(max_length=1000)

    class Meta:
        managed = False
        db_table = 'a_cafes'


    def __str__(self):
        return self.cafe_name
试着替换

name.innerHTML = data[0][1];


控制台日志图像显示
数据
为一维数组,对象条目的形式为
{id,list,vention}
。像查找数组一样查找对象项的属性
1
,将返回
未定义的

从何处获取
未定义的
?可能代码在调用
getTableData
之后,但在服务器的响应触发对AJAX成功函数的回调之前,试图访问响应数据。我在HTML中没有定义。name.innerHTML=数据[0][1];太棒了,谢谢你,成功了。
name.innerHTML = data[0].venue.cafe_name;