news 2026/4/25 18:15:59

venv虚拟环境运行Django项目

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
venv虚拟环境运行Django项目
  1. 创建虚拟环境:在C:\Users\Administrator\Desktop\new_s目录执行python -m venv venv
  2. 激活虚拟环境.\venv\Scripts\Activate.ps1(终端前缀出现(venv)即成功)
  3. 如果报错权限问题,先执行:

    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
  4. 安装 Django:激活环境后执行pip install django(版本 3.2.25,已装在虚拟环境,非全局)
  5. 创建 Django 项目django-admin startproject hengDaProject(生成项目根目录,内含manage.py
  6. 创建 7 个业务 App:进入项目根目录cd hengDaProject,逐行执行python manage.py startapp homeApp/aboutApp/newsApp/productsApp/serviceApp/scienceApp/contactApp

二、核心文件结构(关键区分,避免进错目录)

项目根目录hengDaProject/,和manage.py同级,终端需定位至此):manage.py(核心命令文件)、hengDaProject/(项目配置文件夹)、7 个 App 文件夹(homeApp / 等)

项目配置文件夹hengDaProject/hengDaProject/):自带urls.py(总路由,自动生成)、settings.pyasgi.py等,无需新建

每个 App 文件夹(如 homeApp/):自动生成views.py(视图函数)、models.py等,无自带 urls.py,需手动新建

三、路由配置(核心步骤,已按 14 个页面配好,直接复用)

路由分总路由(项目级,分发请求)和子路由(App 级,对应具体页面),按以下代码全量替换 / 新建即可。

1. 项目总路由:hengDaProject/hengDaProject/urls.py(替换原有代码)

python

运行

from django.contrib import admin from django.urls import path, include # 新增include,用于分发路由 urlpatterns = [ path('admin/', admin.site.urls), # 后台管理路由(Django自带) path('', include('homeApp.urls')), # 首页,分发到homeApp path('aboutApp/', include('aboutApp.urls')), # 企业相关,分发到aboutApp path('contactApp/', include('contactApp.urls')), # 联系/招聘,分发到contactApp path('newsApp/', include('newsApp.urls')), # 新闻相关,分发到newsApp path('productsApp/', include('productsApp.urls')), # 产品相关,分发到productsApp path('serviceApp/', include('serviceApp.urls')), # 服务相关,分发到serviceApp path('scienceApp/', include('scienceApp.urls')), # 科研基地,分发到scienceApp ]
2. 各 App 子路由:每个 App 下手动新建 urls.py,粘贴对应代码

表格

App 名称新建 urls.py 代码
homeAppfrom django.urls import path<br>from . import views<br>urlpatterns = [path('', views.index, name='index')]
aboutAppfrom django.urls import path<br>from . import views<br>urlpatterns = [path('survey/', views.survey, name='survey'),path('honor/', views.honor, name='honor')]
contactAppfrom django.urls import path<br>from . import views<br>urlpatterns = [path('contact/', views.contact, name='contact'),path('recruit/', views.recruit, name='recruit')]
newsAppfrom django.urls import path<br>from . import views<br>urlpatterns = [path('company/', views.company, name='company'),path('industry/', views.industry, name='industry'),path('notice/', views.notice, name='notice')]
productsAppfrom django.urls import path<br>from . import views<br>urlpatterns = [path('robot/', views.robot, name='robot'),path('monitoring/', views.monitoring, name='monitoring'),path('face/', views.face, name='face')]
serviceAppfrom django.urls import path<br>from . import views<br>urlpatterns = [path('download/', views.download, name='download'),path('platform/', views.platform, name='platform')]
scienceAppfrom django.urls import path<br>from . import views<br>urlpatterns = [path('science/', views.science, name='science')]

四、视图函数配置(每个 App 的 views.py,替换原有代码,测试用)

每个 App 的views.py是页面逻辑核心,以下代码为测试版(访问页面显示文字,验证路由通断),直接替换各 App 原有views.py即可:

  1. homeApp/views.pyfrom django.http import HttpResponse<br>def index(request):<br> return HttpResponse("✅ 首页")
  2. aboutApp/views.pyfrom django.http import HttpResponse<br>def survey(request): return HttpResponse("✅ 企业概况")<br>def honor(request): return HttpResponse("✅ 荣誉资质")
  3. contactApp/views.pyfrom django.http import HttpResponse<br>def contact(request): return HttpResponse("✅ 欢迎咨询")<br>def recruit(request): return HttpResponse("✅ 加入恒达")
  4. newsApp/views.pyfrom django.http import HttpResponse<br>def company(request): return HttpResponse("✅ 公司要闻")<br>def industry(request): return HttpResponse("✅ 行业新闻")<br>def notice(request): return HttpResponse("✅ 通知公告")
  5. productsApp/views.pyfrom django.http import HttpResponse<br>def robot(request): return HttpResponse("✅ 家用机器人")<br>def monitoring(request): return HttpResponse("✅ 智能监控")<br>def face(request): return HttpResponse("✅ 人脸识别解决方案")
  6. serviceApp/views.pyfrom django.http import HttpResponse<br>def download(request): return HttpResponse("✅ 资料下载")<br>def platform(request): return HttpResponse("✅ 人脸识别开放平台")
  7. scienceApp/views.pyfrom django.http import HttpResponse<br>def science(request): return HttpResponse("✅ 科研基地")

五、项目运行与页面访问(最终验证)

  1. 启动项目:终端定位到项目根目录(含manage.py),执行python manage.py runserver
  2. 访问 14 个页面:浏览器输入对应地址,均能显示测试文字即成功首页:http://127.0.0.1:8000/企业概况:http://127.0.0.1:8000/aboutApp/survey/荣誉资质:http://127.0.0.1:8000/aboutApp/honor/欢迎咨询:http://127.0.0.1:8000/contactApp/contact/加入恒达:http://127.0.0.1:8000/contactApp/recruit/公司要闻:http://127.0.0.1:8000/newsApp/company/行业新闻:http://127.0.0.1:8000/newsApp/industry/通知公告:http://127.0.0.1:8000/newsApp/notice/家用机器人:http://127.0.0.1:8000/productsApp/robot/智能监控:http://127.0.0.1:8000/productsApp/monitoring/人脸识别:http://127.0.0.1:8000/productsApp/face/资料下载:http://127.0.0.1:8000/serviceApp/download/开放平台:http://127.0.0.1:8000/serviceApp/platform/科研基地:http://127.0.0.1:8000/scienceApp/science/

六、关键问题与解决方案(避坑重点)

  1. 报错 “Couldn't import Django”:未激活虚拟环境 / 进错目录 / Django 装到全局,解决:激活venv+ 定位到项目根目录 + 确保 Django 装在虚拟环境
  2. VS Code 报 Django 模块警告:编辑器未选虚拟环境的 Python 解释器,解决:左下角切换解释器为.\venv\Scripts\python.exe(不切换也不影响项目运行)
  3. 报错 “can't open file 'manage.py'”:终端进错目录,解决:执行cd ..回到含manage.py的项目根目录
  4. startapp 命令报错:多个命令写一行,解决:逐行执行,一个命令一次回车

七、当前项目状态(全部完成,可直接开发)

✅ 虚拟环境正常激活,Django 安装无误✅ 7 个业务 App 全部创建,项目结构完整✅ 14 个页面路由(总 + 子)全配置,分发逻辑正确✅ 视图函数测试版完成,所有页面可正常访问✅ 核心命令文件manage.py可用,项目可启动 / 停止 / 后续扩展

下一步可做(开发方向)

  1. settings.py中注册 7 个 App(INSTALLED_APPS添加 App 名称),支持模型 / 模板等功能
  2. 替换视图函数的HttpResponse为模板渲染(render(request, '模板文件名.html')),制作前端页面
  3. 创建templates模板文件夹和static静态文件夹(css/js/ 图片),实现页面美化
  4. models.py中定义数据库模型,实现数据存储 / 查询
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/25 18:14:38

2026体制内考什么经济学专业证书有用?

每年毕业季&#xff0c;不少经济学相关专业的同学会将目光投向各类机关和事业单位的经济管理岗位。无论是宏观经济分析、政策研究&#xff0c;还是区域经济规划&#xff0c;这些方向都与专业学习内容高度契合。然而&#xff0c;随着各单位管理方式的持续优化&#xff0c;对人才…

作者头像 李华
网站建设 2026/4/25 18:12:40

文件和fd,文件的内核级缓冲区,重定向

文件文件 内容 属性访问文件之前&#xff0c;必须要打开它文件在未打开之前&#xff0c;是在磁盘中的当访问一个文件时&#xff0c;是进程在访问文件进程在内存里&#xff0c;cpu只可以读取内存但是文件存在磁盘中所以可以看出&#xff0c;文件也会加载到内存中否则cpu无法访…

作者头像 李华
网站建设 2026/4/25 18:10:56

极光信息社|4月21日科技速报:反垄断、并购与科技产业新动向

2026年4 月 21 日&#xff0c;全球科技领域重磅事件频发&#xff0c;反垄断监管、企业并购、海外业务布局、智能新品发布等动态接连落地&#xff0c;多家科技巨头迎来关键发展节点&#xff0c;产业格局持续优化调整。1. 苹果印度反垄断案加速推进&#xff0c;最高面临 380 亿美…

作者头像 李华
网站建设 2026/4/25 18:08:58

UIEffect深度解析:为Unity UI注入专业级视觉效果的终极指南

UIEffect深度解析&#xff1a;为Unity UI注入专业级视觉效果的终极指南 【免费下载链接】UIEffect UIEffect is an open-source package that allows you to intuitively apply rich UI effects directly from the Inspector or via code. Combine various filters, such as gr…

作者头像 李华