【Django入门】第一个Django项目

Django,广为人知的Python Web框架,以其强大而又灵活的特点脱颖而出。其宣传口号是:"为完美主义者开发的框架"。这篇文章将为你揭示创建第一个Django项目的魔法以及Django项目的基本结构。

为什么选择Django?

在深入学习前,我们先看看为什么要选择Django:

  • 快速开发:Django遵循"约定优于配置"的原则,使得开发者能够专注于编写应用,而不是配置框架。
  • 安全性:Django具有内置的安全特性,可以帮助开发者避免常见的安全错误,如SQL注入、跨站脚本等。
  • 丰富的功能:Django自带了一个强大的ORM(对象关系映射)、Admin界面、认证系统等,减少了开发者从零开始构建这些功能的需要。

创建你的第一个Django项目

安装Django

打开CMD终端后输入pip install django

命令创建

在安装了Django后,你可以使用以下命令来创建你的第一个Django项目:

powershell 复制代码
django-admin startproject myproject

此命令将生成一个名为myproject的文件夹,它是你Django项目的根目录。

Pycharm创建

  1. 打开Pycharm界面,点击创建项目
  1. 选择Django,然后指定创建的文件夹,项目名称myproject,然后在existing interpreter中指定该项目所使用的的Python解释器,默认是使用你本地环境的,如果您设置了虚拟环境也可以设置成虚拟环境。


Django项目结构介绍

当你创建一个新的Django项目后,你会看到以下文件和文件夹结构:

shell 复制代码
myproject/
|-- manage.py
|-- myproject/
    |-- __init__.py
    |-- settings.py
    |-- urls.py
    |-- asgi.py
    |-- wsgi.py

我们一一解释每个文件和目录的作用:

  • manage.py:这是一个命令行工具,可以让你以各种方式与Django项目进行交互,例如运行服务器、创建数据库表等。
  • myproject/init.py:一个空文件,告诉Python这个目录应该被视为一个Python包。
  • myproject/settings.py:Django项目的配置文件。这里包括了数据库配置、应用注册、中间件、模板设置等。
  • myproject/urls.py:定义了项目的URL模式。每个URL都会映射到一个特定的视图函数。
  • myproject/asgi.py & wsgi.py:这两个文件用于项目的部署。asgi.py用于ASGI服务器,而wsgi.py用于WSGI服务器。

运行Django

在Pycharm中当我们配置好相关Django环境后,点击右上角小三角,运行系统,然后在pycharm的输出终端中点击:127.0.0.1:8000,会自动打开默认浏览器,这是一个初始的Django界面运行成功啦。


【注意】Django4.0的版本可能存在报错情况(NameError: name 'os' is not defined),这个在setting.py文件中加上一行import os即可

相关推荐
muddjsv42 分钟前
SQLite数据库文件机制详解:journal、wal、shm文件作用与备份避坑
数据库·sqlite
吴声子夜歌2 小时前
MongoDB 4.2——应用程序设计
数据库·mongodb
数字新视界2 小时前
动环监控可视化在数据中心管理中的应用与实践解析
数据库·物联网·解决方案·动环监控·大榕树
极地野狼 音乐哔哔2 小时前
数据库备份恢复的原理实践
数据库
互联网中的一颗神经元3 小时前
小白python入门 - 25. SQL 与表设计入门
数据库·python·sql
ttwuai3 小时前
AI 生成后台改数据后,操作日志别只记按钮:Go + MySQL 怎么验
数据库·人工智能·mysql·golang
KaMeidebaby3 小时前
卡梅德生物技术快报 | 核酸适配体文库测序:核酸适配体文库测序的技术原理、实验流程与数据解析
前端·网络·数据库·人工智能·算法
ClouGence3 小时前
除了 DBeaver,2026 年还有哪些好用的开源数据库管理工具?
数据库·开源
景芯SoC芯片实战4 小时前
12nm工艺下,6T-Turbo Cell的Filler到底该怎么插?
数据库·数字ic·dft·soc后端
韩楚风4 小时前
【参天引擎】一次宕机后的数据恢复,让我把 Cantian 持久化与恢复的六大机制全搞明白了
服务器·网络·数据库·分布式·mysql·架构·cantian