首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何删除tastypie模型资源索引

如何删除tastypie模型资源索引
EN

Stack Overflow用户
提问于 2013-05-15 19:21:24
回答 1查看 173关注 0票数 0

我正在使用django-tastypie实现rest api。我的api资源定义如下:

代码语言:javascript
复制
class AddressResource(ModelResource):

    class Meta:
        resource_name = 'address'
        queryset = Address.objects.all()
        always_return_data = True
        authorization = Authorization()
        serializer = Serializer(formats=['json'])

        validation = Validation()

我有一个模型地址定义为:

代码语言:javascript
复制
class Address(models.Model):
    number = models.IntegerField()
    street = models.CharField(max_length=100)
    city = models.CharField(max_length=100)
    country = models.CharField(max_length=25)
    postalCode = models.CharField(max_length=5)

我可以创建地址资源发布到url http://mydomain.com/api/v1/Address/。创建地址资源后,资源uri为/api/v1/Address/1/..../api/v1/Address/2/....etc

如果我直接从模型数据库中删除资源,或者通过HTTP删除资源http://mydomain.com/api/v1/Address/2/,当我对资源执行新的post时,资源uri的id仍然基于最后一个索引递增。

例如:我有30个地址资源,我删除了所有这些资源,当我对一个新资源进行新的发布时,资源uri是/api/v1/ address /31/而不是1。

删除资源后,如何删除索引?

提前感谢维克多

EN

回答 1

Stack Overflow用户

发布于 2013-05-15 19:43:22

如果你使用的是自动增量字段,这是不可能的,这是django的默认primare key字段。要做你想做的事情,你需要使用primary_key=True属性为primare key指定你自己的字段。在创建新的模型实例时,您需要手动将其设置为您想要的内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16563701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档