我正在开发一个单页应用程序,它将从大约十二种不同的django模型加载数据,允许用户操作数据,然后将所有更改保存回数据库。
我可以通过序列化查询集中的结果来将django模型“传递”到模板。例如,我有一个模型Person:
class Person(models.Model):
id = models.AutoField(primary_key=True)
age = models.IntegerField()
name = models.CharField(max_length=250)
现在,在我看来,我可以通过序列化将“person”对象传递给json格式的模板
person_object = serializers.serialize("json", Person.objects.filter(id=1))
然后,在我的javascript中:
var someperson = {{ data|safe }};
但是,我希望能够在客户端创建一个“新”人,就像Person是一个javascript类而不仅仅是一个json对象:
var person2 = new Person(id=5,age=33m,name="john");
我的javascript“class”有没有办法继承Django数据模型?或者我是否需要在django和javascript之间手动重新创建数据模型?
答案 0 :(得分:0)
你可以把整个字符串放在
中person = 'new Person(id="%(id)s",age="%(age)s",name="%(name)s")' %
{'id':person_instance.id , ....}
然后将其作为上下文变量发送到模板,所以看起来像这样
var person2 = {{ person }} ;