Django使用外键字段休息框架POST

时间:2016-09-26 15:04:07

标签: jquery ajax django django-rest-framework

如何使用jquery ajax调用POST为包含ManyToMany字段的模型创建新记录?

我的模特:

class Foo(models.Model):
  bar = models.ManyToManyField(Qux, blank=True)
  baz = CharField(max_length=15)

class Qux(models.Model):
  id = models.AutoField(primary_key=True)

我的js:

values = {
    bar: ???,
    baz: 'test'
}

$.ajax({
                url: '/api/foo/',
                type: 'PUT',
                data: values,
                success: function(e){
                    console.log('success');
                },
                error: function(){
                    console.log('error')
                }
            });

1 个答案:

答案 0 :(得分:0)

最简单的方法是传递与要与之形成关系的Qux对象相对应的ID列表。然后,您可以在视图中的add方法中使用这些ID。

这是通过ajax传递ID列表的好文章:How to pass a list of id's in a AJAX request to the Server in MVC