【问题标题】:Unable to import model.py in another app's form无法以其他应用程序的形式导入 model.py
【发布时间】:2018-07-31 03:13:40
【问题描述】:

我正在使用 Django 1.8 和 Python 3.5 我有 3 个应用程序 -> 主页、登录、注册,并且目录在图片中给出

我正在尝试在 login/forms.py 中导入 mainpage/models.py 但是当我这样做时,如果您希望我发布其他任何内容,请告诉我在 cmets 中我该怎么做?

See Image

是的

Please I have read this already but not working.提前致谢

追溯

Environment:


Request Method: GET
Request URL: http://localhost:8000/login

Django Version: 1.8
Python Version: 3.5.4
Installed Applications:
('django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'mainpage',
 'signup',
 'login',
 'rest_framework',
 'corsheaders')
Installed Middleware:
('django.contrib.sessions.middleware.SessionMiddleware',
 'corsheaders.middleware.CorsMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware',
 'django.middleware.security.SecurityMiddleware')


Traceback:
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\handlers\base.py" in get_response
  108.                 response = middleware_method(request)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\middleware\common.py" in process_request
  74.             if (not urlresolvers.is_valid_path(request.path_info, urlconf) and
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\urlresolvers.py" in is_valid_path
  647.         resolve(path, urlconf)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\urlresolvers.py" in resolve
  522.     return get_resolver(urlconf).resolve(path)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\urlresolvers.py" in resolve
  368.                     sub_match = pattern.resolve(new_path)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\urlresolvers.py" in resolve
  240.             return ResolverMatch(self.callback, args, kwargs, self.name)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\urlresolvers.py" in callback
  247.         self._callback = get_callable(self._callback_str)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\urlresolvers.py" in get_callable
  106.         mod = import_module(mod_name)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\importlib\__init__.py" in import_module
  126.     return _bootstrap._gcd_import(name[level:], package, level)
File "C:\Users\vaibhav2\PycharmProjects\MajorProject\src\login\views.py" in <module>
  2. from .forms import UserLoginForm
File "C:\Users\vaibhav2\PycharmProjects\MajorProject\src\login\forms.py" in <module>
  2. from MajorProject.src.signup.models import allusers1

Exception Type: ImportError at /login
Exception Value: No module named 'MajorProject'

编辑

根据@Alasdair 的回答,即将出现的错误是这样的

  ImportError at /login
No module named 'src.signup'

Environment:


Request Method: GET
Request URL: http://localhost:8000/login

Django Version: 1.8
Python Version: 3.5.4
Installed Applications:
('django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'mainpage',
 'signup',
 'login',
 'rest_framework',
 'corsheaders')
Installed Middleware:
('django.contrib.sessions.middleware.SessionMiddleware',
 'corsheaders.middleware.CorsMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware',
 'django.middleware.security.SecurityMiddleware')


Traceback:
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\handlers\base.py" in get_response
  108.                 response = middleware_method(request)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\middleware\common.py" in process_request
  74.             if (not urlresolvers.is_valid_path(request.path_info, urlconf) and
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\urlresolvers.py" in is_valid_path
  647.         resolve(path, urlconf)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\urlresolvers.py" in resolve
  522.     return get_resolver(urlconf).resolve(path)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\urlresolvers.py" in resolve
  368.                     sub_match = pattern.resolve(new_path)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\urlresolvers.py" in resolve
  240.             return ResolverMatch(self.callback, args, kwargs, self.name)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\urlresolvers.py" in callback
  247.         self._callback = get_callable(self._callback_str)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\site-packages\django\core\urlresolvers.py" in get_callable
  106.         mod = import_module(mod_name)
File "C:\Users\vaibhav2\AppData\Local\Programs\Python\Python35\lib\importlib\__init__.py" in import_module
  126.     return _bootstrap._gcd_import(name[level:], package, level)
File "C:\Users\vaibhav2\PycharmProjects\MajorProject\src\login\views.py" in <module>
  2. from .forms import UserLoginForm
File "C:\Users\vaibhav2\PycharmProjects\MajorProject\src\login\forms.py" in <module>
  3. from src.signup.models import allusers1

Exception Type: ImportError at /login
Exception Value: No module named 'src.signup'

【问题讨论】:

  • 请不要发布代码截图。复制并粘贴不起作用的导入。屏幕截图可以显示目录结构,但文本更好。对于 Windows,请参阅 this question
  • src 包含所有内容,因此它是主目录

标签: python django


【解决方案1】:

signup 在项目目录中(包含manage.py 的目录)。因此导入应该很简单:

from signup.models import allusers1

【讨论】:

  • 没有名为“src.signup”的模块
  • 接下来我该怎么做?
  • 你还没有说这个错误是从哪里来的,从我的回答中它不会是由from signup.models import allusers1引起的。
  • 完成了我的朋友。
  • 仔细看我回答中的代码。我说过要使用from signup.models import allusers1。您尝试了其他方法,所以它不起作用。
猜你喜欢
  • 2021-12-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多