У меня проблема с тем, что Tastypie не сохраняет изменения в моем объекте, когда я делаю PUT, из-за которого для поля постороннего ключа устанавливается значение NULL.
Вот мой ModelResource:
class FolderResource(ModelResource):
parent = fields.ForeignKey('self','parent',full=True,default=None,blank=True,null=True)
project = fields.ForeignKey(ProjectResource,'project',full=False)
class Meta:
queryset = Folder.objects.all()
authentication = Authentication()
authorization = Authorization()
resource_name = 'folder'
include_absolute_url = True
always_return_data = True
filtering = {
"slug": ('exact', 'startswith',),
"name": ALL,
"project":ALL_WITH_RELATIONS,
"parent":ALL_WITH_RELATIONS,
"id":('exact')
}
У меня есть существующий объект папки со следующими данными:
{
absolute_url: "/projects/1/files/5/",
created_date: "13 Feb 2012",
id: "5",
modified_date: "15 Feb 2012",
modified_file: null,
name: "testfolder2",
parent: {
absolute_url: "/projects/1/files/1/",
created_date: "4 Feb 2012",
id: "1",
modified_date: "15 Feb 2012",
modified_file: null,
name: "testfolder1",
parent: null,
project: "/projects/api/v1/project/1/",
removed_date: null,
resource_uri: "/projects/api/v1/folder/1/",
slug: "testfolder1"
},
project: "/projects/api/v1/project/1/",
removed_date: null,
resource_uri: "/projects/api/v1/folder/5/",
slug: "testfolder2"
}
Я попытаюсь поместить следующие данные в '/projects / api / v1 / folder / 5 / ':
{
parent: null
}
Я не получаю никаких ошибок, все выглядит нормально, но в базу данных ничего не сохраняется.Может кто-нибудь сказать мне, что я делаю неправильно или почему изменения не сохраняются?