我正在尝试以html格式查看某些输入的python列表:
$('input[name=my_array]').serializeObject()
我的输入标记是这样的:
<input type="hidden" name="my_array" value="{{ my_array_of_objects }}">
但我只是得到这样的东西:
[<object_type: an_object object>]
所以我无法访问此对象的任何属性。有没有办法将其转换为我可以查看这些引用的内容?我已经能够在之前的实例中迭代它们,并在我的HTML文件中访问它们的属性:
{% for o in my_array_of_objects %}
<li> o.id, o.first_name, o.last_name </li>
{% endfor %}
那么我是否可以通过javascript访问此对象?对不起,如果这是noob问题。
编辑:这是我想要通过的一个示例。我正在使用一个django rest框架,我的对象存储在SQLDB中,在如下的python类下:class my_object(models.Model):
study_id = models.CharField(max_length = 30, blank = True)
g1 = models.ForeignKey(G1)
g2 = models.ForeignKey(G2)
title = models.IntegerField(choices = TITLE_CHOICES)
family = models.IntegerField(choices = FAMILY_CHOICES)
当我渲染一些页面时,我创建了一个我需要的这些对象的列表,让我们称之为my_list_of_objects
。所以,在HTML表单中,我有一个输入:
<input type="hidden" name="my_list" value="{{ my_list_of_objects }}">
当我在提交表单后尝试在JavaScript端引用此值时,我得到的是
列表my_list_of_objects =[<my_object: my_object object>, <my_object: my_object object>, ...]
答案 0 :(得分:1)
无法将该对象转换为JSON对象并进行访问。
JSON.parse($('input[name=my_array]').val());
我仍然没有得到它,你如何创建对象列表。 (可能是因为我对Python不太了解)
顺便提一下,我建议你将Python对象列表转换为服务器页面中的JSON对象。
json.dumps(c.__dict__)
我从here得到了这一行。然后,您可以在java脚本中使用 JSON.parse 。
答案 1 :(得分:0)
尝试JSON.serialize(my_array_of_objects)