Django 1.10自动创建模型表

时间:2016-12-27 02:16:26

标签: database sqlite python-3.x django-models

我想知道是否有任何方法可以在SQLite中使用Django 1.10创建一个新的模型表(比如编写一般的python代码),而不必在models.py中指定。情况是如果在我的网站上注册了新成员,那么我将为他们创建一个新的模型表来保存他们的数据。具体做法是:

第1步:John Doe在我的网站上注册

步骤2:系统创建一个名为db_johnDoe的模型表(与其他字段具有相同的字段集)

步骤3:系统可以根据John在网站上的行为插入和编辑db_johnDoe的数据。

有什么想法吗?非常感谢。

2 个答案:

答案 0 :(得分:1)

我认为为每个用户创建一个表并不是一个好主意。这可能会导致性能下降和安全性降低。为什么不创建一个名为userInfo的表并将useruserID作为外键?

答案 1 :(得分:-1)

非常感谢你们,特别是@Hary TD的参考资料非常有帮助。基于此,我想出了如何做到这一点,并总结如下,其他人'参考:

from django.db import connection
db_name = 'ADDRESSES'    

cursor = connection.cursor()
cursor.execute("""CREATE TABLE %s (
     USERNAME VARCHAR(64) NOT NULL PRIMARY KEY, 
     ADDRESS VARCHAR(64),
     CITY VARCHAR(64), 
     ZIPCODE VARCHAR(16), 
     UNIQUE (ADDRESS, CITY, ZIPCODE))""" % db_name)

其他sql命令也可以这种方式执行。