ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Django orm的managed参数

2022-08-14 17:32:54  阅读:198  来源: 互联网

标签:managed 该表 models Django orm False class


Django orm的managed参数

如果一张表不是在django的models.py中创建表,而是该表由cmd或者Navicat或者其他方式创建的,或者该表是一个视图,那么也可以在models.py里写上该表的参数,和数据库中的该表/视图做上映射关系,但是要指定managed=False(不创建表)这个参数,然后就可以继续使用django的orm一系列的方法(前提是表名和字段都要对应上)

首先我在数据库中创建了一个student表

image

然后在django中做model与表的映射关系

class Student(models.Model):
    id = models.IntegerField(primary_key=True, auto_created=True)
    name = models.CharField(max_length=30)

    class Meta:
        managed = False  # 必须要指定为False
        db_table = 'student'

    def __str__(self):
        return self.name

使用orm

class StudentAPIView(APIView):
    def get(self, request):
        qs = Student.objects.all()
        print(qs)
        return Response('ok')
# <QuerySet [<Student: jason>, <Student: tom>, <Student: tony>, <Student: lqz>]>

标签:managed,该表,models,Django,orm,False,class
来源: https://www.cnblogs.com/zonghan/p/16585821.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有