django,inspectdb,操作已经存在的表
1.Django附带了⼀个名为inspectdb程序,它可以通过现有数据库来创建模型,并将相关模型代码另存到指定⽂件中。在新建的newmodels.py⽂件中挑选指定表格对应的模型代码,并将其复制到相关的⽂件中。
1 python manage.py inspectdb > newmodels.py
若要操作指定数据库,使⽤如下代码:
1 python manage.py inspectdb --database new_schema1 > models1.py
2.默认情况下,inspectdb创建⾮托管模型。也就是说,在模型的Meta类中,managed = False告诉Django不要管理每个表的创建,修改和删除。如果想让Django管理表的⽣命周期,你需要将上⾯的托管选项更改为True,即将managed = False修改为managed = True。
1class Person(models.Model):
2 id = models.IntegerField(primary_key=True)
3 first_name = models.CharField(max_length=70)
4class Meta:django登录注册功能
5 managed = False
6 db_table = 'CENSUS_PERSONS'
3.运⾏migrate命令以安装任何额外需要的数据库记录,如session、auth等。若对此类表格没有操作必要,可以不⽤执⾏下列代码,亦可进⾏数据库操作。
1 python manage.py makemigrations
2 python manage.py migrate
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论