我正在开发需要动态创建表的Django应用。
def dcreatedb(request):
dbname = request.GET['dbname']
attrs = {
'name': models.CharField(max_length=20),
'__module__': 'data.models'
}
model = type(dbname, (models.Model,), attrs)
with connection.schema_editor() as schema_editor:
schema_editor.create_model(model)
return HttpResponse('done')
上方的dcreatedb
视图可动态创建模型。但是我需要在其他视图中访问同一模型,但是该模型不在应用程序的models.py文件中,而是由dcreatedb
视图动态创建。
def dinsertdb(request):
dbname = request.GET['dbname']
# access the dbname model and do some work
return HttpResponse('work done')
例如,让我们假设books
视图动态创建了一个名为dcreatedb
的模型,现在我想在dinsertdb
视图中访问相同的模型。(两个{ {1}}模型和dcreatedb
模型位于同一应用程序下的同一dinsertdb
文件中。)
如何才能做到这一点?
谢谢