为什么django激活管理界面,运行服务器后,无法访问(语言-python)

为什么django激活管理界面,运行服务器后,无法访问
出现情况
Page not found (404)
Request Method: GET
Request URL: http://127.0.0.1:8000/
Using the URLconf defined in HelloWorld.urls, Django tried these URL patterns, in this order:
admin/
check/
The empty path didn’t match any of these.
You’re seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 404 page.
运行结果报错内容:

img

访问 http://127.0.0.1:8000/admin ,这是默认的管理链接

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7756669
  • 除此之外, 这篇博客: 【实战学习(三)】开源项目学习之Django框架简介以及启动中的 404 not found 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:
    “404 NOT FOUND, 404错误 ”(或“ 找不到页面 ”) – 是服务器无法找到用户请求的文档时发生的标准HTTP状态代码 。
    • 可能原因:网页已从网站上删除 / 用户输入的URL地址不正确 / 页面已移动,重定向配置不正确 / 服务器出现故障

    • 分析原因:查看dailyfresh文件下的urls.py,能找到为路径为空的path,但页面又提示空路径不匹配任何一个。再看cmd运行窗口:

      [22/Apr/2021 00:40:02] "GET / HTTP/1.1" 404 3027
      Not Found: /favicon.ico
      
    • 解决方法:找一个图片格式为ico,命名成: favicon.ico,拷贝到django下的./contrib/admin/static/admin/img/,操作完成后重新执行python manage.py runserver 0.0.0.0:8000,打开浏览器,(参考http://www.voidcn.com/article/p-suwghcua-bqm.html),依然不行,但命令行提示的是:

      Not Found: /
      

先绕过这个问题,根据提示,改变访问的文档:

在这里插入图片描述
可以看到CMD命令行也发生变化:

C:\Users\Facek\Documents\github-learning\dailyfresh-B2C\dailyfresh>python manage.py runserver
Performing system checks...

System check identified no issues (0 silenced).

You have 20 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, goods, order, sessions, user.
Run 'python manage.py migrate' to apply them.
April 22, 2021 - 00:31:05
Django version 2.1.7, using settings 'dailyfresh.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
Not Found: /
[22/Apr/2021 00:40:02] "GET / HTTP/1.1" 404 3027
Not Found: /favicon.ico
[22/Apr/2021 00:40:02] "GET /favicon.ico HTTP/1.1" 404 3078
[22/Apr/2021 00:42:53] "GET /admin/ HTTP/1.1" 302 0
[22/Apr/2021 00:42:56] "GET /admin/login/?next=/admin/ HTTP/1.1" 200 1821
[22/Apr/2021 00:42:56] "GET /static/admin/css/base.css HTTP/1.1" 200 16225
[22/Apr/2021 00:42:56] "GET /static/admin/css/login.css HTTP/1.1" 200 1203
[22/Apr/2021 00:42:56] "GET /static/admin/css/responsive.css HTTP/1.1" 200 17976
[22/Apr/2021 00:42:56] "GET /static/admin/css/fonts.css HTTP/1.1" 200 423
[22/Apr/2021 00:42:56] "GET /static/admin/fonts/Roboto-Light-webfont.woff HTTP/1.1" 200 81348
[22/Apr/2021 00:42:56] "GET /static/admin/fonts/Roboto-Regular-webfont.woff HTTP/1.1" 200 80304


  • 以下回答来自chatgpt:

    解决方案:

    1. 确认是否已经在settings.py文件中注册了admin应用。

    在settings.py中找到INSTALLED_APPS,确认其中是否包含了'django.contrib.admin'。如果没有,需要手动添加该行代码:

    INSTALLED_APPS = [
        # ...
        'django.contrib.admin',
        # ...
    ]
    
    1. 确认是否在urls.py文件中配置了管理界面的路由。

    在urls.py中找到urlpatterns,确认其中是否已经包含了管理界面的路由:

    from django.contrib import admin
    from django.urls import path
    
    urlpatterns = [
        # ...
        path('admin/', admin.site.urls),
        # ...
    ]
    

    如果没有,需要手动添加该行代码。

    1. 确认是否已经创建了超级用户。

    运行以下命令创建超级用户:

    python manage.py createsuperuser
    

    按照提示输入用户名、电子邮件和密码等信息。

    1. 确认是否已经启动Django服务器。

    在命令行中进入当前项目的根目录,输入以下命令:

    python manage.py runserver
    

    如果已经启动了服务器,需要检查端口号和IP地址是否正确。

    1. 如果以上方法都不行,可以尝试清除缓存和重启服务器。

    在命令行中输入以下命令:

    python manage.py flush
    python manage.py runserver
    

    这会删除数据库中的所有数据,并重新启动服务器。如果还未解决问题,可以考虑检查Django版本、Python版本、数据库设置等情况。

    如果以上方法都不能解决问题,可能需要对具体的代码和环境进行排查,或者请教其他专家。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^