写在前面

最近比较迷AI绘图,那就上个图吧,我感觉还挺好看的。

可能会有人说,之前不一致分享的是flask吗,怎么突然改到django了?

这个问题问得好,开发环境遇到了一些小困难!

不过django,真的是很流行,一点都不过时,这您放心好了!不多说,直接看效果吧!

环境搭建

1、当前环境版本

  • python==3.9.10
  • django== 2.2

2、安装

pip install django==2.2

3、创建项目

django-admin startproject django_project

4、目录结构
$ cd django_project/
$ tree
.
|-- django_project
| |-- __init__.py
| |-- asgi.py
| |-- settings.py
| |-- urls.py
| `-- wsgi.py
`-- manage.py

目录说明:

  • django_project: 项目的容器。
  • manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
  • django_project/init.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
  • django_project/asgi.py: 一个 ASGI 兼容的 Web 服务器的入口,以便运行你的项目。
  • django_project/settings.py: 该 Django 项目的设置/配置。
  • django_project/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
  • django_project/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。

5、启动服务

项目根目录输入如下命令:

python manage.py runserver
#python manage.py runserver 0.0.0.0:8000

0.0.0.0 标识其他电脑也可以访问,如不指定端口号,默认为8000,自带热部署,这点很吸引我!

启动成功如下:

神坑报错:



百度后看到答案,真的石化了!

没想到听歌还给自己添堵了,大神的回答如下:

pycharm的django框架默认端口为8000,但是酷狗音乐也会默认占用端口8000,就离谱,改下端口号或者关闭酷狗音乐就可以了

第一个程序

1、配置视图和URL

在项目根目录下的 django_project 目录新建一个 views.py 文件,并输入代码:

# -*- coding: utf-8 -*-
# @Time : 2023/11/29 21:08
# @Author : longrong.lang
# @FileName: views.py.py
# @Software: PyCharm
# @Cnblogs :https://www.cnblogs.com/longronglang
# @Motto:你只管努力,剩下的交给天意.
from django.http import HttpResponse def django_demo(request):
return HttpResponse("Hello django_demo ! ")

绑定URL与视图函数。打开 urls.py 文件,删除原来代码,将以下代码复制粘贴到 urls.py 文件中

from django.urls import path

from . import views

urlpatterns = [
path("", views.django_demo),
]

保存代码后,会自动重启,这个热部署真的爱了,效果如下:

知识点:

path() 函数:可以接收四个参数,分别是两个必选参数:route、view 和两个可选参数:kwargs、name

语法格式:

path(route, view, kwargs=None, name=None)
  • route:  字符串,定义URL的路径部分。可以包含变量,例如 <int:my_variable>,以从 URL 中捕获参数并将其传递给视图函数。
  • view:  视图函数,处理与给定路由匹配的请求。可以是一个函数或一个基于类的视图。
  • kwargs(可选):  一个字典,包含传递给视图函数的额外关键字参数。
  • name(可选):  为 URL 路由指定一个唯一的名称,以便在代码的其他地方引用它。这对于在模板中生成 URL 或在代码中进行重定向等操作非常有用。

2、url函数的使用

url() 可以接收四个参数,分别是两个必选参数:regex、view 和两个可选参数:kwargs、name.

def url(regex, view, kwargs=None, name=None):
return re_path(regex, view, kwargs, name)
  • regex: 正则表达式,与之匹配的 URL 会执行对应的第二个参数 view
  • view: 用于执行与正则表达式匹配的 URL 请求。
  • kwargs: 视图使用的字典类型的参数。
  • name: 用来反向获取 URL

多个url情况:

view.py加跳转url,代码如下:

from django.http import HttpResponse

def django_demo(request):
return HttpResponse("Hello django_demo ! ") def index(request):
return HttpResponse("index page ! ")

在urls.py加个跳转路由,代码如下:

"""django_project URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/2.2/topics/http/urls/
Examples:
Function views
1. Add an import: from my_app import views
2. Add a URL to urlpatterns: path('', views.home, name='home')
Class-based views
1. Add an import: from other_app.views import Home
2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
Including another URLconf
1. Import the include() function: from django.urls import include, path
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.conf.urls import url
from django.urls import path from . import views urlpatterns = [
path('django_demo/', views.django_demo),
url('^$', views.index),
]

知识点:

  • url(r'^$', view.index):这项是打开首页 http://127.0.0.1:8080
  • path('django_demo/', views.django_demo):这个是打开页面http://localhost:8080/django_demo

到此,开发环境搭建完毕!

写在最后

昨天没更文是有原因的,主要是被影响了心情,花了近3个小时,去追寻本就无果的答案,想想真的挺傻的,哈哈,

最烦的是,还影响到了我的情绪,导致文章就没写上,还好今天又重拾自己,找到了状态,结果环境除了问题,反正这个也要学的,就索性学了。

有时候一直坚持的事情,并不一定是要感动自己,也可能是一种寻找和尝试!

最近还是在找状态,我也说不好,我总感觉,好像很接近了,就我很想要的那种亢奋的状态(还是这句话当我没说吧!)

Django学习(一) 之 环境搭建的更多相关文章

  1. Django学习笔记 开发环境搭建

    为什么使用django?1.支持快速开发:用python开发:数据库ORM系统,并不需要我们手动地构造SQL语句,而是用python的对象访问数据库,能够提升开发效率.2.大量内置应用:后台管理系统a ...

  2. 【Django学习笔记】-环境搭建

    对于初学django新手,根据以下步骤可以快速进行Django环境搭建 虚拟环境创建 使用virtualenv创建并启用虚拟机环境 ,关于virtualenv可参考https://www.yuque. ...

  3. Django学习日记01_环境搭建

    1. 使用Vagrant 创建ubuntu虚拟机: 首先安装vagrant,网上有比较多的方法,如:http://www.th7.cn/system/mac/201405/55421.shtml 我使 ...

  4. Django 学习笔记之一 环境搭建

    以后的文章都是在windows系统进行的 首先下载安装Django包 方式1:使用 pip或easy_insatll来进行安装 同时按住win+R键,弹出命令行运行框输入,pip install Dj ...

  5. 一、Android学习第一天——环境搭建(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 一. Android学习第一天——环境搭建 Android 开发环境的搭建 ...

  6. Zend Framework学习日记(1)--环境搭建篇(转)

    Zend Framework学习日记(1)--环境搭建篇 (1)开发工具 Zend Framework框架:http://framework.zend.com/download/latest 包含2个 ...

  7. Django 01 django基本介绍及环境搭建

    Django 01 django基本介绍及环境搭建 #http服务器 #用来接收用户请求,并将请求转发给web应用框架进行处理 #Web应用框架 #处理完请求后在发送给http服务器,http服务器在 ...

  8. Android Studio 学习笔记(一)环境搭建、文件目录等相关说明

    Android Studio 学习笔记(一)环境搭建.文件目录等相关说明 引入 对APP开发而言,Android和iOS是两大主流开发平台,其中区别在于 Android用java语言,用Android ...

  9. 【golang学习记录】环境搭建

    [golang学习记录]环境搭建 一. 概述 本文是[golang学习记录]系列文章的第一篇,安装Go语言及搭建Go语言开发环境,接下来将详细记录自己学习 go 语言的过程,一方面是为了巩固自己学到的 ...

  10. JAVA基础学习——1.1 环境搭建 之jdk安装,环境变量配置 (系统Win10,64bit)

    大学里虽然老师教过JAVA,但我没学.后来工作了,断断续续的也碰到了JAVA的项目,都是拉过来就干的节奏.也没有好好系统的学习一下. 从今天开始系统学习整理一下JAVA,以后再碰到JAVA项目的时候, ...

随机推荐

  1. MyBatis-Plus批量插入方法saveBatch

    1. saveBatch能否提高插入的效率? 先说结论,saveBatch()方法也是一条一条的插入,也就是说它会产生多条insert语句,而不是一条insert语句,所以它不是真正的批量插入,更不能 ...

  2. 带你读论文丨Fuzzing漏洞挖掘详细总结 GreyOne

    本文分享自华为云社区<[论文阅读] (03) 清华张超老师 - Fuzzing漏洞挖掘详细总结 GreyOne>,作者: eastmount. 一.传统的漏洞挖掘方法 演讲题目: 数据流敏 ...

  3. 《Kali渗透基础》15. WEB 渗透

    @ 目录 1:WEB 技术 1.1:WEB 攻击面 1.2:HTTP 协议基础 1.3:AJAX 1.4:WEB Service 2:扫描工具 2.1:HTTrack 2.2:Nikto 2.3:Sk ...

  4. 《SQL与数据库基础》07. 约束

    目录 约束 常见约束案例 外键约束 删除/更新行为 本文以 MySQL 为例 约束 概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据. 目的:保证数据库中数据的正确性.有效性和完整性. 分 ...

  5. 我找回了我喜欢的Github Old Feed

    前言 这周Github更新了个人主页Feed(指的是用户的活动源或动态源),作为GitHub重度爱好者而言New Feed完全不是我之前所喜欢的效果.虽然说New Feed添加了允许用户可以自定义配置 ...

  6. Webpack性能优化 SplitChunksPlugin的使用详解

    使用前景 在vue.react等使用webpack为项目打包工具的前端项目,在开发过程中,随着项目功能的逐渐增加,项目整体体积的不断增加,打包的时长和打包后部署的项目体积也在不停的增长,这样可能会导致 ...

  7. Oracle12C登录PDB容器

    Oracle12C登录PDB用户,此为12C的新特性 ①首先管理员身份登录 sqlplus / as sysdba;--管理员身份登录 show con_name;--查看此时连接容器 显示:CDB$ ...

  8. 10.4 认识Capstone反汇编引擎

    Capstone 是一款开源的反汇编框架,目前该引擎支持的CPU架构包括x86.x64.ARM.MIPS.POWERPC.SPARC等,Capstone 的特点是快速.轻量级.易于使用,它可以良好地处 ...

  9. pci p2p

    概述 在2018年,针对pci支持p2pdma的驱动合入主线,没记错的话应该是4.20. 补丁如下: commit 52916982af48d9f9fc01ad825259de1eb3a9b25e A ...

  10. 前端三件套系例之CSS——CSS3基础样式

    文章目录 1.宽和高 案例 2.字体属性 2-1 文字字体 2-2 字体大小 2-3 字重(粗细) 2-4 文本颜色 2-5 总结 2-6 案例 文字属性 3-1 文字对齐 3-2 文字装饰 3-3 ...