这段代码
from django.db import models
class Person(models.Model):
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=30)
产生这些sql语句
CREATE TABLE myapp_person (
"id" serial NOT NULL PRIMARY KEY,
"first_name" varchar(30) NOT NULL,
"last_name" varchar(30) NOT NULL
);
我想知道是否可以反过来做。给定一个带有
的 .sql 文件CREATE TABLE myapp_person (
"id" serial NOT NULL PRIMARY KEY,
"first_name" varchar(30) NOT NULL,
"last_name" varchar(30) NOT NULL
);
应该用
生成 models.py 文件class Person(models.Model):
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=30)
TIA
最佳答案
正如 JamesO 在评论中所说,您可以为此使用 inspectdb
。
首先,创建一个数据库,然后针对该数据库运行该 SQL 文件以创建表。
然后,运行 python manage.py inspectdb
从数据库表创建模型。
关于sql - 使用 sql 数据创建模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20473148/