2017-09-14 74 views
1

我试图从路径的文件中导入模型 -Django的进口车型

"/usr/local/lib/python2.7/dist-packages". 

文件巫婆包含这就是所谓的table_class_corespondance所以当我导入它是模型:从table_class_corespondance导入用户。 现在在用户类定义后,我宣布我写的领域:

class Meta: 
    managed = False 
    db_table = 'USERS' 
    app_label = "banner_manager" 

使Django会知道,应用程序会参考该表。但不幸的是,这个错误仍然显示:

RuntimeError: Model class table_class_corespondance.Users doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS. 

任何想法我能做些什么来解决它?

回答

0

当使用元:

如果将模型的应用的外部INSTALLED_APPS限定在,它必须声明它所属的应用程序来:

示例:如果应用程序名称是music

app_label: 'music' 

现在,

模型的数据库表名是通过将模型的app label(您在manage.py startapp中使用的名称)加入模型的类名称并在它们之间加下划线来构造的。

例如:如果应用程序music有模式Album

db_table = 'music_album' 

这是多么元的作品。

完整的例子:

class Meta: 
    managed = False 
    app_label = "myapp" 
    db_table = 'myapp_model' 

现在你只要搞清楚你在做什么。

希望它有帮助!

+0

事情是这张表属于另一个数据库。与数据库的连接在settings.py中具有以下结构:'default':'ENGINE':'django.db.backends。 MySQL的, 'NAME':database_name_1, '用户':USER_NAME, '密码':密码, 'HOST':主机, '端口':端口, }, '用户':{ “ ENGINE':'django.db.backends。MySQL的, 'NAME':database_name_2, '用户':USER_NAME, '密码':密码, 'HOST':主机, '端口':端口, }该模式是用户连接到数据库的用户 – Unknown

0

的事情是,此表属于另一个数据库which.The连接到数据库在settings.py如下因素构成:

'default': { 
     'ENGINE': 'django.db.backends.mysql', 
     'NAME': database_name_1, 
     'USER': user_name, 
     'PASSWORD': password, 
     'HOST': host, 
     'PORT': port, 
    }, 

    'users': { 
     'ENGINE': 'django.db.backends.mysql', 
     'NAME': database_name_2, 
     'USER': user_name, 
     'PASSWORD':password, 
     'HOST': host, 
     'PORT': port, 

}该模式是用户连接到“用户”数据库演示了如何应该db_table的肩膀看起来?感谢您的回答