[转帖]Python学习之十七_django的入门
Python学习之十七_django的入门
前言
Python学习了一周, 慢慢总结摸索.
自己还是有多不会的地方.
感慨这些年浪费的时间.
所有的时间都是选择大于努力.
努力最多感动自己. 生活是需要的是正确的选择.
平凡的实在人太难在一个固化的社会生存.
共勉.
安装
因为安装的是社区版.
所以与专业版不太一样.
这次学习主要是依靠知乎和CSDN作者的文档.
感谢原作者的付出:
https://www.zhihu.com/people/xiao-hui-er-12-30
https://blog.csdn.net/weixin_47197906
Pycharm社区版下载就可以了.
然后可以安装python的版本. python 设置为 local interpreter.
需要注意. 命令行进行操作. 和在pycharm里面进行操作可能使用了不同的python环境.
如果在自己的cmd 里面运行命令, 最好是在外部也安装一下 对应的pip组件.
pip install django
创建django的项目
在pycharm的左下角的 Terminal
mkdir f:\django
cd f:\django
django-admin startproject django_study
cd django_study
python manage.py startapp djangoweb
然后使用python打开这个project 就可以.
文件目录结构
django_study
├── django_study
│ ├── asgi.py
│ ├── __init__.py
│ ├── __pycache__
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── djangoweb
│ ├── admin.py
│ ├── apps.py
│ ├── __init__.py
│ ├── migrations
│ ├── models.py
│ ├── tests.py
│ └── views.py
└── manage.py
文件目录结果说明
最上一层的 django_study 是项目名称. 理论上是可以改名的.
第二层的 django_study 是创建项目时形成的 主应用 名不能修改.
第二层 django_study 目录内的 setting.py 是环境配置需要的.
第二层 django_study 目录内的 url.py 是进行url 路由设置的.开放部分请求界面
第二层 django_study 目录内的 wsgi.py 是网络通信接口.
第二层的 djangoweb 是创建的一个从属app
一个项目内可以有多个app. app 可以根据应用模块类型进行拆分.
第二层 djangoweb 目录内的
各个文件说明如下:
(1)migrations:这是一个目录,用于存储应用的数据库表结构的指令,
通过这些指令可以修改和创建数据库,从而实现models.py模型类和数据库表之间迁移。
(2)admin.py:自定义Django管理工具,比如设置在管理界面能够管理的项目,
或者通过重新自定义与系统管理有关的类对象,向管理功能增加新的内容。
(3)apps.py:Django1.10之后增加的,通常包含对应用的配置,比如为管理功能提供一个合适的应用名称。
(4)models.py:这是应用的数据模型,每个Django应用都应当有一个models.py文件,
虽然该文件可以为空,但不宜删除。
(5)tests.py:在这个文件中可以编写测试文档来测试所创建的应用。
(6)views.py:这是一个重要的文件,用于保存响应各种请求的函数或者类。
如果编写的是函数,则基于函数的视图;如果编写的是类,则称为基于类的视图。
views.py就是保存函数或者类的视图文件。当然,也可以用其他的文件名称,只不过在引入相应函数或者类时,
要注意名称的正确性,views.py是我们习惯使用的文件名称。
django的框架简介
jango是一款python的web开发框架,属于MTV框架。
m 表示model,负责与数据库交互。数据存取层,模型是网站项目的基础,
主要负责处理与数据相关的事务,如读取、写入数据等。
v 表示view,是核心,负责与用户的逻辑交互,业务逻辑层,
包含存取模型及调用相应模板的相关逻辑,是M和T的桥梁,在Django得到用户的请求后,
根据URL映射关系调用相应的视图,视图则调用和处理有关数据。
与模板相比,视图确定访问者能看到哪些数据,而模板确定怎么看到这些数据。
t 表示template,显示层,负责显示页面,处理与表现有关的事务。
From https://blog.csdn.net/weixin_47197906/article/details/124866771
服务启动
cd F:\django\django_study
python.exe .\manage.py runserver
就可以拉起来服务
hello world 的设置
在 djangoweb的 views.py 里面添加代码:
from django.http import HttpResponse
def index(request):
return HttpResponse('济南小老虎欢迎你!')
在将主应用里面的 urls.py 增加或者修改为如此状态
from django.contrib import admin
from django.urls import path
from djangoweb import views
urlpatterns = [
path('admin/', admin.site.urls),
path('index/', views.index)
]
再次拉起来服务
python manage.py runserver
就可以通过 127.0.0.1:8000/index
来访问了.
[转帖]Python学习之十七_django的入门的更多相关文章
- python学习之“切片操作从入门到精通”
在python学习开发的过程中,我们总是不断的要对List(列表),Tuple(元组)有取值操作:假如我们有一个列表List1现在想取出1其中的前5个元素,改怎么操作呢? >>> L ...
- python 学习笔记十七 django深入学习二 form,models
表单 GET 和 POST 处理表单时候只会用到GET 和 POST 方法. Django 的登录表单使用POST 方法,在这个方法中浏览器组合表单数据.对它们进行编码以用于传输.将它们发送到服务器然 ...
- python学习第十七天 --定制类
何为定制类? Python的class允许定义许多特殊方法,可以让我们非常方便地生成特定的类.在类中应用或者重写python的特殊方法,得到的类,就是定制类. 大家都知道print的用法.见下面例子 ...
- Python学习(十七)—— 数据库(二)
转载自http://www.cnblogs.com/linhaifeng/articles/7356064.html 一. 数据库管理软件的由来 基于我们之前所学,数据要想永久保存,都是保存于文件中, ...
- Python学习札记(十七) 高级特性3 列表生成式
参考:列表生成式 Note 1.List Comprehensions,即列表生成式,是Python中内置的非常强大的list生成式. eg.生成一个列表:[1*1, 2*2, ..., 10*10] ...
- python学习(十七) 扩展python
c, c++, java比python快几个数量级. 17.1 考虑哪个更重要 开发速度还是运行速度更重要. 17.2 非常简单的途径:Jython和IronPython Jython可以直接访问JA ...
- python学习笔记十七:base64及md5编码
一.Python Base64编码 Python中进行Base64编码和解码要用base64模块,代码示例: #-*- coding: utf-8 -*- import base64 str = 'c ...
- Python学习日记(十七) os模块和sys模块
os模块 1.os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 import os print(os.getcwd()) #C:\Users\Administrator\ ...
- python学习三十七天函数的作用域查找顺序LEGB
python函数的作用域查找顺序LEGB,分别为 locals eclosing globals builtins .了解作用域的范围,可以更好的操作你想要的业务,分别介绍一下. 1,local ...
- python学习第二十七天函数的return返回值
python函数返回值用的return ,函数遇到return 结束函数运行过程,终止程序,不论后面还有多少个输出,都终止本次函数,所有一定要慎重用return 1,函数return用法 def go ...
随机推荐
- 中文语音识别转文字的王者,阿里达摩院FunAsr足可与Whisper相颉顽
君不言语音识别技术则已,言则必称Whisper,没错,OpenAi开源的Whisper确实是世界主流语音识别技术的魁首,但在中文领域,有一个足以和Whisper相颉顽的项目,那就是阿里达摩院自研的Fu ...
- VSCode C++开发环境配置:CMake 调试配置 launch.json
相关内容 VSCode C++开发环境配置: LLVM clang clangd 安装 cmake sudo apt install cmake 安装 VSCode 插件 CMake CMakeToo ...
- Cesium中用到的图形技术——Horizon Culling
译者注:本文翻译自Cesium官方博文<Horizon Culling>,by KEVIN RING. 目录 地平线针对球体剔除一个点 平面测试 圆锥测试 推广到椭球 代码 预览 在开发像 ...
- Proxy下的Prepare透传,让GaussDB(for MySQL)更稳固,性能更卓越
本文分享自华为云社区<Proxy下的Prepare透传,让GaussDB(for MySQL)更稳固,性能更卓越>,作者: GaussDB 数据库 . 1.引言 在很多业务场景下,数据库应 ...
- 空间数据库基础理论 GIS空间数据处理分析涉及的基本概念
<空间数据库>课程整理汇总,106篇课程,内容太长,学习中,把一些关键点,汇总记下笔记 地理空间 GIS中的地理空间(Geo-spatial)是指经过投影变换后,在笛卡尔坐标系中的地球表层 ...
- Docker 安装 Elasticsearch、Kibana
为了Skywalking 准备 elasticsearch 至少 需要2G内存 docker pull elasticsearch:7.9.3 docker run --name elasticsea ...
- pod内部网络实现
k8s主题系列: 一.k8s网络之设计与实现 二.k8s网络之pod内部网络 三.k8s网络之Flannel网络 四.k8s网络之Calico网络 pod特性 Pod 是 K8S 的最小工作单元.每个 ...
- expect --批量传递公钥
#!/binbash ! rpm -qa |grep expect &> /dev/null && yum -y install expect #判断是否已下载expec ...
- MB51增强
一.在MB51报表中新增列 包含文件RM07DOCS_GENERATED的itab结构中,新增字段 在RM07DOCS中的detail_list子例程中添加查询逻辑 在子例程build_fieldca ...
- Codeforces Round #658 (Div. 2)
A.Common Subsequence 题意 给你两组数,问你有没有相同 的书,有的话,输出最短的那组(大家都知道,1是最小的) AC #include<bits/stdc++.h> ...