[转帖]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 ...
随机推荐
- Pikachu漏洞靶场 Sql Inject(SQL注入)
SQLi 哦,SQL注入漏洞,可怕的漏洞. 文章目录 SQLi 数字型注入(post) 字符型注入(get) 搜索型注入 xx型注入 "insert/update"注入 inser ...
- spring-cloud-alibaba项目打包
在父依赖中加入 <build> <plugins> <plugin> <groupId>org.springframework.boot</gro ...
- ElasticSearch系列:基本操作(SpringDataElasticSearch)
一.创建工程.导入坐标 1.选择Next 2.填写名称.选择位置.填写公司或组织.选择Finish 3.导入坐标 <?xml version="1.0" encoding=& ...
- GIS拓扑讲解点线面几何体的拓扑关系判断及运算分析_turf案例
Turf.js简介 Turf.js是JavaScript 空间分析库,由Mapbox 提供,Turf 实现了 空间分析操作,例如生成缓冲区.计算等高线,建立 TIN 等: 空间几何对象关系的计算,点 ...
- 广告策划师如何做 AB 测试
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 近年来,随着消费者的心理需求逐步趋向于精神层面.科技的迭代迅速以及市场环境的复杂性逐步上升,我国的广告行业逐步展开 ...
- 【C++第三方库】Windows下编译和使用 WebSocket++/WebSocketpp
应用场景: 使用C++开发一个支持websocket协议的服务进程,可与HTML5(浏览器js文件)通信.来实现替换基于firebreath框架的跨浏览器插件开发. 当前,讲述websocketpp开 ...
- 【MFC】CSingleLock的使用
转载文章:CSingleLock的使用 // 先看看其代码: // 声明 class CSingleLock { // Constructors public: CSingleLock(CSyncOb ...
- 图扑 HT for Web 手机端运维管理系统
随着信息技术的快速发展,网络技术的应用涉及到人们生活的方方面面.其中,手机运维管理系统可提供数字化.智能化的方式,帮助企业和组织管理监控企业的 IT 环境,提高运维效率.降低维护成本.增强安全性.提升 ...
- ios-class-guard - iOS代码混淆与加固实践
目录 ios-class-guard - iOS代码混淆与加固实践 摘要 引言 一.class-dump 二.ios-class-guard 混淆原理 三.ios-class-guard 混淆结果 ...
- 构建高效数据流转的 ETL 系统:数据库 + Serverless 函数计算的最佳实践
作者|柳下 概述 随着企业规模和数据量的增长,数据的价值越来越受到重视.数据的变化和更新变得更加频繁和复杂,因此及时捕获和处理这些变化变得至关重要.为了满足这一需求,数据库 CDC(Change Da ...