3
我正在研究一个单页面应用程序,它将加载来自大约12个不同django模型的数据,允许用户操纵数据,然后将所有更改保存回数据库。从django模型创建JavaScript对象(类)
我可以通过序列化来自查询集的结果,将django模型'传递'为模板。例如,我有一个模型人:
class Person(models.Model):
id = models.AutoField(primary_key=True)
age = models.IntegerField()
name = models.CharField(max_length=250)
现在,在我看来,我可以通过序列化它传递一个“人”的对象,以JSON格式的模板
person_object = serializers.serialize("json", Person.objects.filter(id=1))
然后,在我的JavaScript的:
var someperson = {{ data|safe }};
不过,我想能够在客户端创建一个“新”的人,因为如果该人是一个JavaScript类不是简单的JSON对象:
var person2 = new Person(id=5,age=33m,name="john");
有没有办法让我的JavaScript“类”继承Django数据模型?或者我需要在django和javascript之间手动重新创建我的数据模型?
这并没有真正解决我遇到的问题。我可以从django到javascript的人“对象”没有问题。它在客户端创建新对象是有问题的,因为在JavaScript中没有相应的“类”(函数),这将允许我构建新的人员对象。 当然,我可以在技术上手动模仿数据模型,但这似乎是一个糟糕的解决方案,因为模型的更改也需要在JavaScript构造函数中进行。 – corycorycory