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的入门的更多相关文章

  1. python学习之“切片操作从入门到精通”

    在python学习开发的过程中,我们总是不断的要对List(列表),Tuple(元组)有取值操作:假如我们有一个列表List1现在想取出1其中的前5个元素,改怎么操作呢? >>> L ...

  2. python 学习笔记十七 django深入学习二 form,models

    表单 GET 和 POST 处理表单时候只会用到GET 和 POST 方法. Django 的登录表单使用POST 方法,在这个方法中浏览器组合表单数据.对它们进行编码以用于传输.将它们发送到服务器然 ...

  3. python学习第十七天 --定制类

    何为定制类? Python的class允许定义许多特殊方法,可以让我们非常方便地生成特定的类.在类中应用或者重写python的特殊方法,得到的类,就是定制类. 大家都知道print的用法.见下面例子 ...

  4. Python学习(十七)—— 数据库(二)

    转载自http://www.cnblogs.com/linhaifeng/articles/7356064.html 一. 数据库管理软件的由来 基于我们之前所学,数据要想永久保存,都是保存于文件中, ...

  5. Python学习札记(十七) 高级特性3 列表生成式

    参考:列表生成式 Note 1.List Comprehensions,即列表生成式,是Python中内置的非常强大的list生成式. eg.生成一个列表:[1*1, 2*2, ..., 10*10] ...

  6. python学习(十七) 扩展python

    c, c++, java比python快几个数量级. 17.1 考虑哪个更重要 开发速度还是运行速度更重要. 17.2 非常简单的途径:Jython和IronPython Jython可以直接访问JA ...

  7. python学习笔记十七:base64及md5编码

    一.Python Base64编码 Python中进行Base64编码和解码要用base64模块,代码示例: #-*- coding: utf-8 -*- import base64 str = 'c ...

  8. Python学习日记(十七) os模块和sys模块

    os模块 1.os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 import os print(os.getcwd()) #C:\Users\Administrator\ ...

  9. python学习三十七天函数的作用域查找顺序LEGB

    python函数的作用域查找顺序LEGB,分别为 locals  eclosing  globals  builtins .了解作用域的范围,可以更好的操作你想要的业务,分别介绍一下. 1,local ...

  10. python学习第二十七天函数的return返回值

    python函数返回值用的return ,函数遇到return 结束函数运行过程,终止程序,不论后面还有多少个输出,都终止本次函数,所有一定要慎重用return 1,函数return用法 def go ...

随机推荐

  1. Spring Boot结合Element UI前后端分离的aixos的简单操作

    1:axios是什么? 基于promise用于浏览器和node.js的http客户端 axios官网:http://www.axios-js.com/  2:准备工作: 安装axios:npm ins ...

  2. MyBatis 批量更新的处理

    一般来讲,在使用 MyBatis 进行数据库的访问时,通常会遇到需要更新数据的相关业务,在某些业务场景下,如果需要进行一批次的数据更新,可能性能不是特别理想.本文将简要介绍几种能够高效地处理批量更新数 ...

  3. .NET Core Swagger Actions require a unique method/path combination for Swagger/OpenAPI 3.0. Use ConflictingActionsResolver as a workaround

    遇到的问题 因为新增了一个控制器方法,从而导致在运行Swagger的时候直接报错,异常如下: SwaggerGeneratorException: Conflicting method/path co ...

  4. maven系列:属性管理和版本管理

    目录 一. 属性配置与使用 ①:定义属性 ②:引用属性 二. 资源文件引用属性 ①:定义属性 ②:配置文件中引用属性 ③:开启资源文件目录加载属性的过滤器 ④:配置maven打war包时,忽略web. ...

  5. Ascend CL两种数据预处理的方式:AIPP和DVPP

    摘要:本文介绍了昇腾CANN提供的两种数据预处理的方式:DVPP和AIPP,介绍了两者的功能.差别及联系,并以具体代码示例介绍了如何使用DVPP和AIPP的功能. 本文分享自华为云社区<了解As ...

  6. 自从安上了“AI”,这些商务经理天天按时下班了

    摘要:能不能用AI来提升合同管理的效率呢?华为公司用自己的AI实践提交了一份教科书级别的答卷. 对于企业的商务精英而言,什么事情令他们既"煎熬"又"开心",既& ...

  7. SQL SERVER数据分组后取第一条数据——PARTITION BY

    MySQL 数据分组后取第一条数据 SQL SERVER (mssql) 数据分组后取第一条数据 SQL 如下 找状态=1的数据,按 HospitalId,DeptId 组合并倒序排序,每组里面取第一 ...

  8. 本地安装mysql (zip)

    下载 https://downloads.mysql.com/archives/community/ 解压到文件夹且添加系统环境变量 C:\Dinstall\Dmysql\mysql-8.2.0-wi ...

  9. js import的几种用法

    最近昨天公司小朋友离职,临时接收其负责的vue前端项目.vue好久没做了,很多东西都忘记或以前也没接触,几天开始慢慢写点vue的小知识,算是历程或备忘吧. import在js.ts中用了不知多少次,但 ...

  10. Qt 的Cmake方式如何创建资源文件和添加类

    CLion(误,QT Creator) 添加资源文件时 选择Qt 然后选择Qt Resource File 单击choose,然后给你的资源文件输入一个名字比如res单击下一步,然后完成,保存 这时候 ...