Django 3没有声明明确的应用程序标签,也不在已安装的应用程序中的应用程序中

2024-10-03 19:24:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在学习Django 3,但遇到了一个问题。我的应用程序名为calc1。代码如下:

型号.PY

from django.db import models

# Create your models here.

class Dreamreal(models.Model):
    website = models.CharField(max_length = 50)
    mail = models.CharField(max_length = 50)
    name = models.CharField(max_length = 50)
    phonenumber = models.IntegerField()

class Meta:
    db_table = "dreamreal"

视图.PY

from django.shortcuts import render
from django.http import HttpResponse
import datetime
import time
from .models import Dreamreal
from django.http import HttpResponse



# Create your views here.
def home(request):
    today = datetime.datetime.now().date()

    return render(request, 'home.html',{'today' :today}) 


def crudops(request):        
    dreamreal = Dreamreal(
      website = "www.vlcbt.org.uk", mail = "info@vlcbt.org.uk",
      name = "John", phonenumber = "08767655665"
    )

    dreamreal.save()

    # read all entries and print
    objects = Dreamreal.objects.all()
    res ="printing all documents <br>"
    for elt in objects: 
        res += elt.name +"<br>"

    return HttpResponse(res)

当我尝试迁移时,会收到以下错误消息:

文件“C:\Users\john\Envs\lms\Scripts\projects\jkjlms\calc1\url.py”,第3行,在 从…起导入视图 文件“C:\Users\john\Envs\lms\Scripts\projects\jkjlms\calc1\views.py”,第5行,在 来自。模型导入Dreamreal 文件“C:\Users\john\Envs\lms\Scripts\projects\jkjlms\calc1\models.py”,第5行,在 类Dreamreal(models.Model): 文件“C:\python\lib\site packages\django\db\models\base.py”,第115行,在new “已安装的应用程序”。%(模块,名称) 运行时错误:模型类calc1.models.Dreamreal未声明明确的应用程序\u标签,并且不在已安装的\u应用程序中的应用程序中

提前谢谢你的帮助


Tags: 文件djangonamefrompyimport应用程序db
2条回答

您应该在已安装的应用程序中的settings.py文件中添加应用程序:

INSTALLED_APPS = [
    # ...,
    calc1,
]

另外,在迁移之前,您应该执行python manage.py makemigrations calc1

只需将Django的站点框架添加到您的应用程序中,并在您的设置中将SITE_ID设置为1

INSTALLED_APPS = [
    ...
    'django.contrib.sites',
]

SITE_ID = 1

相关问题 更多 >