当前位置: 首页 > news >正文

Django快速入门搭建网站

Django 最初被设计用于具有快速开发需求的新闻类站点,目的是要实现简单快捷的网站开发
编写Django应用文档

  • 1、安装 Django正式版
    • 安装Django:python -m pip install Django
    • 验证:python -m django --version 或者 print(django.get_version())
  • 2、创建项目
    • 在命令行中,cd 目录进入希望存储代码的目录,并创建一个新目录(如 djangotutorial ):mkdir djangotutorial
    • 新建一个名为 mysite 的Django项目:django-admin startproject mysite djangotutorial
      此时项目结构预期如下:
      djangotutorial/manage.py			-> 管理 Django 项目的命令行工具mysite/				-> 项目的实际 Python 包__init__.py		-> 标识 mysite 为 python 包的空文件settings.py		-> Django 项目的配置文件urls.py			-> Django 项目的 URL 声明asgi.py			-> 运行在 ASGI 兼容的 Web 服务器上的入口wsgi.py			-> 运行在 WSGI 兼容的Web服务器上的入口
      
  • 3、启动服务cd djangotutorial 进入项目目录下,运行python manage.py runserver
    • 为了使您的开发服务器对网络上的其他机器可见,运行:python manage.py runserver 0.0.0.0:8000
      还需要在 settings.py 中修改 ALLOWED_HOSTS 将本机IP地址添加进来比如:ALLOWED_HOSTS = ['10.225.1.1', '127.0.0.1', 'localhost']
  • 4、访问:通过浏览器访问 http://127.0.0.1:8000/ 或其他人访问 http://10.225.1.1:8000/,服务器运行成功,你将看到一个“祝贺”页面,有一只火箭正在发射。
  • 5、项目配置好了,此时创建应用程序,比如名为 polls:python manage.py startapp polls,布局如下:
    polls/__init__.pyadmin.pyapps.pymigrations/__init__.pymodels.pytests.pyviews.py
    
  • 6、编写视图并配置
    • 打开 polls/views.py,输入如下内容:
      from django.http import HttpResponsedef index(request):return HttpResponse("Hello, world. You're at the polls index.")
      
    • 要在浏览器中访问它,我们需要将其映射到一个 URL,为 polls 应用定义一个 URLconf,创建一个名为 polls/urls.py 的文件,写入如下内容:
      from django.urls import pathfrom . import viewsurlpatterns = [path("", views.index, name="index"),
      ]
      
    • 在项目中定义polls的url配置,用 include 引用其他 URLconfs ,修改mysite/urls.py
      from django.contrib import admin
      from django.urls import include, path  # 导入includeurlpatterns = [path("polls/", include("polls.urls")),  # 添加这一行声明path("admin/", admin.site.urls),
      ]
      
    • 重新启动服务,访问 http://localhost:8000/polls/ 验证改动。

views.py中的视图返回形式举例:

  • HttpResponse

    from django.http import HttpResponse
    import datetimedef current_datetime(request):now = datetime.datetime.now()html = '<html lang="en"><body>It is now %s.</body></html>' % nowreturn HttpResponse(html)
    
  • render返回自定义的HTML文件:

    from django.http import Http404
    from django.shortcuts import render
    from polls.models import Polldef detail(request, poll_id):try:p = Poll.objects.get(pk=poll_id)except Poll.DoesNotExist:raise Http404("Poll does not exist")return render(request, "polls/detail.html", {"poll": p})
    
  • render返回模板文件:

    from django.shortcuts import render# Create your views here.
    def index(request):return render(request, 'index.html')
    

    index.html 位于项目 djangotutorial 下的 templates 文件夹内时,修改settings配置:

    from pathlib import PathBASE_DIR = Path(__file__).resolve().parent.parentINSTALLED_APPS = [...,"polls",  # 应用名...,
    ]TEMPLATES = [{"BACKEND": "django.template.backends.django.DjangoTemplates","DIRS": [BASE_DIR / "templates"],  # 添加模板目录"APP_DIRS": True,# ...},
    ]
    
http://www.dtcms.com/a/273525.html

相关文章:

  • Monorepo 与包管理工具:从幽灵依赖看 npm 与 pnpm 的架构差异
  • Django母婴商城项目实践(二)
  • 行测之地理常识
  • Linux进程间通信--命名管道
  • 用TensorFlow进行逻辑回归(一)
  • AI 产品经理必看:神秘技术架构图如何打通跨团队沟通壁垒?
  • wpf Canvas 导出图片
  • 利用Claude code,只用文字版系统设计大纲,就能轻松实现系统~
  • AIC8800M40低功耗wifi在ARM-LINUX开发板上做OTA的调试经验
  • 【计算机网络】王道考研笔记整理(2)物理层
  • Flask 入门到实战(2):使用 SQLAlchemy 打造可持久化的数据层
  • Java-70 深入浅出 RPC Dubbo 详细介绍 上手指南
  • QT控件 使用QtServer系统服务实现搭建Aria2下载后台服务,并使用Http请求访问Json-RPC接口调用下载退出
  • 和鲸社区深度学习基础训练营2025年关卡4
  • Kubernetes 高级调度 01
  • 飞算科技正在撬动各行业数字化转型的深层变革
  • 【理念●体系】Windows AI 开发环境搭建实录:六层架构的逐步实现与路径治理指南
  • Flask 入门到实战(3):用 SQLAlchemy 优雅操作数据库
  • Cursor、飞算JavaAI、GitHub Copilot、Gemini CLI 等热门 AI 开发工具合集
  • 上位机知识篇---SD卡U盘镜像
  • Gartner《构建可扩展数据产品建设框架》心得
  • 【Linux网络】深入理解HTTP/HTTPS协议:原理、实现与加密机制全面解析
  • 没有Mac如何完成iOS 上架:iOS App 上架App Store流程
  • 从零到一:深度解析汽车标定技术体系与实战策略
  • Python打卡:Day50
  • 将Blender、Three.js与Cesium集成构建物联网3D可视化系统
  • uniapp类似抖音视频滑动
  • GNhao,获取跨境手机SIM卡跨境通信新选择!
  • JAVA面试宝典 -《Spring Boot 自动配置魔法解密》
  • 森马服饰从 Elasticsearch 到阿里云 SelectDB 的架构演进之路