认识Django框架,使用Django 2024新手创建Django项目,使用编译工具:Pycharm

Django简单介绍

Django 是一个用 Python 编写的开源 web 应用框架,旨在促进快速开发、维护和部署高效、可扩展的 web 应用程序。它是遵循模型-模板-视图(MTV)设计模式的一个高级框架,尽管有时也被描述为遵循MVC(模型-视图-控制器)模式,但实际上Django的架构细节稍有不同,尤其是在控制器角色的处理上,它由框架本身更自动化地管理。

Django无需数据库就可以使用,它提供了对象关系映射器,通过此技术,我们可以使用Python代码来描述数据库结构。使用强大的数据-模型语句来描述数据模型。

关键特点:

  1. 快速开发:Django提供了一系列现成的工具和功能,比如内置的后台管理界面、数据库迁移工具、表单处理、用户认证系统等,这大大加速了开发进程。
  2. 安全性: Django 非常重视安全性,它提供多种防御措施来帮助开发者避免常见的web安全漏洞,如SQL注入、跨站脚本(XSS)和跨站请求伪造(CSRF)等。
  3. 可扩展性:Django架构设计支持模块化,应用可以方便地被拆分成多个独立的组件(称为app),易于维护和扩展。
  4. 强大的数据库抽象:Django使用一个强大的对象关系映射(ORM),允许开发者使用Python代码而不是SQL来操作数据库。
  5. 模板系统:Django包含一个简洁的模板语言,让设计师和开发者可以清晰地分离业务逻辑和表现层。
  6. URL调度:Django有一个灵活的URL路由系统,可以将URL映射到视图函数,便于控制应用程序的导航结构。
  7. 社区与生态系统: Django 拥有一个庞大且活跃的开发者社区,提供了丰富的第三方插件和库,几乎覆盖了web开发的所有方面。

Django 最初由 Lawrence Journal-World 新闻网站为快速开发内容管理系统而创建,后来于2005年开源。它的名字来源于吉普赛爵士吉他手 Django Reinhardt,体现了项目对优雅和效率的追求。

目录

Django简单介绍

关键特点:

一、使用Anaconda创建Python虚拟环境

一、使用cmd创建虚拟环境

1、创建虚拟环境

2、激活虚拟环境

3、安装Django

4、创建一个新的Django(在刚刚创建的虚拟环境下)

命令窗口运行django项目

二、用Pycharm编译器打开

Pycharm终端启动服务器

我们一般创建一个django会在一个虚拟环境下,这样各自的django项目不会相互影响,可以自由选择版本下载库。

一、使用Anaconda创建Python虚拟环境

那么创建一个虚拟环境首先,我们在使用命令在anaconda创建

首先 正确初始化Conda,命令:

复制代码
conda init

如果没有在命令窗口初始化conda,那么我们在shell会话中就无法与Conda集成,也无法激活Conda环境

一、使用cmd创建虚拟环境

1、创建虚拟环境

我们这里创建一个名为:myproject虚拟环境

复制代码
conda create -n myproject  # myproject就是虚拟环境名
# 如果需要指定python版本的话
conda create -n your-projectname=3.11.7

2、激活虚拟环境

复制代码
conda activate myproject

3、安装Django

在激活的虚拟环境中,使用pip安装Django

复制代码
pip install Django

安装后,确认Django版本:

复制代码
django-admin --version

4、创建一个新的Django(在刚刚创建的虚拟环境下)

在你希望django项目存放的文件夹目录下,运行以下命令:

复制代码
django-admin startproject myproject

这将创建一个名为myproject的文件夹,其中包含Django项目的基本结构

命令窗口运行django项目

进入项目目录,运行

复制代码
python manage.py runserver

用浏览器打开

进入django页面

二、用Pycharm编译器打开

项目结构如下:

记得设置项目虚拟环境,设置方法如下:

Pycharm终端启动服务器

打开终端 首先还是激活虚拟环境,定位到项目目录下,运行下列命令:

复制代码
python manage.py runserver
相关推荐
第九序言T4 小时前
Python 数据处理进阶(十八)批量处理同结构文件:一个文件夹一次跑完
开发语言·python·自动化·pandas·数据处理
Java后端的Ai之路4 小时前
CAS并发控制-从CPU指令到企业级乐观锁
vue.js·人工智能·python·cas·乐观锁
qq_426003964 小时前
UI自动化高频次登录login限流解决方案
python·ui·自动化
Sakura_j_h_4 小时前
EasyEDA PCB 快速设计Skills
c++·python·github
quantdash_cc6 小时前
如何验证历史行情的交易日期是否完整覆盖研究区间?
python·数据分析·pandas·量化交易·股票数据·quantdash
I Am a robert girl6 小时前
当智能体学会“串通”:从长程交互中读懂涌现式合谋
python·多智能体系统·多智能体协作·llm agent·涌现式合谋·对齐问题·激励机制设计
云和数据.ChenGuang6 小时前
光哥说Python RAG 系统需要哪些评估指标:从检索到生成的全链路评测指南
网络·人工智能·python·算法·langchain
专注仿真7 小时前
线性回归和逻辑回归算法详解
开发语言·人工智能·python·大模型训练·控制算法
wflynn8 小时前
GitHub 今日推荐|Edge0:让大号 MoE 模型在一台 Mac 上流式跑起来
python·开源·github
2601_967980118 小时前
python之用scapy分层解析pcap报文(Ethernet帧、IP数据包、TCP数据包、UDP数据包、Raw数据包)
python·scapy·pcap·协议分析·网络数据包