簡體   English   中英

Django ModuleNotFoundError 無法導入模型文件

[英]Django ModuleNotFoundError can't import model file

我是 Django 的新手,想創建虛擬數據,因此使用帶有 sqlite db 的 faker 庫。 創建了 models.py 和 DummyData.py 。

模型.py

from django.db import models
# Create your models here.
class User(models.Model):
    name = models.CharField(max_length=200)
    surname = models.CharField(max_length=200)
    email = models.EmailField(max_length=200, unique= True)

    def __str__(self):
        return "Object created " + "Name :-" + self.name + " Surname :-" + self.surname + " Email :-" + self.email

用於創建虛假數據 DummyData.py

import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", 'Course.settings')

# 1. method
from .models import User

# 2. method
from appTwo.models import User

兩種方式我都無法從模型中導入用戶類,例如出現錯誤

Method 1 output    
ModuleNotFoundError: No module named '__main__.models'; '__main__' is not a package

Method 2 output 
ModuleNotFoundError: No module named 'appTwo

在 appTwo 文件夾中創建了空的init .py。 文件結構如上文件結構

但是我可以在終端中使用方法 2 導入 models.py,所以我有點困惑。

最終結果

我建議以正確的方式初始化 django:

from os import environ as env

if not 'DJANGO_SETTINGS_MODULE' in env:
    env.setdefault('DJANGO_SETTINGS_MODULE', 'Course.settings')

import django #  This is important
django.setup() #  !!!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM