Django Rest框架工作在哪里应用逻辑和如何

时间:2017-10-10 21:36:25

标签: python-3.x api django-models django-rest-framework django-views

我正在构建RestApi我有以下具有三个属性的模型。



class Post(models.Model):


    Score=models.IntegerField()
    PName = models.CharField(max_length=500,default='')
    productName =models.CharField(max_length=500,default='')
    def __str__(self):
        return self.PName




我希望将PName与ProductName相匹配,并生成一些我用模糊逻辑得分的分数。



Pname,ProductName,score
"Nike Flip-flop","Nike Flip Flop Size 8",86
"Nike Flip-Flop","Puma Flip size 9",45
"Puma Running shoe","Puma Running shoe",100
"puma Running shoe","Puma Flip flop",40 




然而,我不知道如何以这种形式呈现结果,其中用户通过了PName =' Nike Flip Flop'得分从高到低



{
    "id": 3,
    "Score": 100,
    "productName": "Nike Flip Flop"
}
{
    "id": 6,
    "Score": 60,
    "productName": "Nike Running shoe"
}
{   "id": 50,
    "Score": 45,
    "productName": "Puma flop size 8"
}




此处用户将请求传递为" A"并且响应应该是" B"属性和" c" .i想知道如何设计此函数的view.py.Currently我有这种数据的CSV格式,所以如何导入模型中的数据?任何建议或任何指导如何构建此函数。我正在使用Django休息框架工作。

2 个答案:

答案 0 :(得分:0)

对于DRF,您可以使用SearchFilterOrderingFilter过滤数据集并对其进行排序。

对于数据导入,您可以使用csv模块读取文件,然后将其添加到数据库

答案 1 :(得分:0)

结帐github repo。我写了一个示例视图,可以作为参考。