django初体验 学习笔记

django环境搭建

1.安装Python

2.ipython

sudo apt-get install ipython

sudo pip install ipython

3.安装pip

sudo apt-get install python-pip

4.安装django

pip安装:

sudo pip install django

源码安装:

1. git clone https://github.com/django/django.git

2.sudo python setup.py install

5.第一个django项目

django-admin startproject mysite

在当前目录执行如下命令:

$ django-admin startproject mysite

会在当前目录下多出一个目录——mysite

进入mysite目录,

该目录下有一个文件manage.py和一个目录mysite。

在当前目录下执行如下命令开启一个网站:

$ python manage.py runserver

会出现一些信息,其中会提示网站已经在 http:127.0.0.1:8000/ 处开启了。

Django创建工程及应用

1.工程目录详解

新建的django项目mysite的目录结构:

.
├── manage.py 管理项目:包括数据库建立、服务器运行、测试……
└── mysite
    ├── settings.py 配置文件:应用、中间件、数据库、静态目录各类配置……
    ├── urls.py URL映射配置文件:决定一个url访问被那个程序(函数)响应
    └── wsgi.py Python应用程序或框架和Web服务器之间接口

使用命令 python manage.py 后面不加参数可以后的帮助信息。

使用命令 python manage.py runserver 启动服务器。

启动服务器命令后面可以带参数host:port指定不同的端口,如:

$ python manage.py runserver 0.0.0.0:8080

则服务器会建立在 http:0.0.0.0:8080

使用 python manage.py shell 进入django的命令行界面(ipython提供)

在shell几面可以进行很多操作,比如访问数据库里的某些数据:

In [1]: Blog.objects.all()

进行 $ python manage.py 后面最长跟的参数:

runserver

makemigrations

migrate

shell

进行 $ python manage.py runserver 之后mysite的目录结构:

.
├── db.sqlite3 多出的是一个数据库文件
├── manage.py
└── mysite
    ├── __init__.py
    ├── __init__.pyc
    ├── settings.py 是整个网站的配置文件
    ├── settings.pyc
    ├── urls.py
    ├── urls.pyc
    ├── wsgi.py
    └── wsgi.pyc

settings.py中的一些信息:

ALLOWED_HOSTS = [] 允许放的的host列表

INSTALLED_APPS = ( ‘...‘, ‘,,,‘, ... ) 已经安装的app

MIDDLEWARE_CLASSES = ( ‘...‘, ‘,,,‘, ... ) 已经选择的django的中间件

ROOT_URLCONF = ‘mysite.urls‘ 是urlconf的一个根目录

TEMPLATES = [] 选择的模板引擎

DATABASES = {    数据库

‘default‘: {

‘ENGINE‘: ‘django.db.backends.sqlite3‘,

‘NAME‘: os.path.join(BASE_DIR, ‘db.sqlite3‘),

}

}

……

urls.py中的一些信息:

urlpatterns = [    这张表中有关于映射的基本信息

url(r‘^admin/‘, include(admin.site.urls)).

]

2.创建应用

django中只用应用来分割功能:

如一个游戏网站 包含 游戏新闻,游戏论坛,Blog系统,在线商城

功能可以拆成四块(每块是一个应用),结构清晰,便于复用

2.1 创建应用blog

$ python manage.py startapp blog

2.2 添加blog应用

mysite/settings.py --> INSTALLED_APPS

在项目mysite目录下使用 $ python manage.py startapp blog 来创建一个名为blog的app。

创建好了blog之后在当前目录中会多出一个名为blog的目录。

blog的目录结构:

blog/
├── admin.py
├── apps.py
├── __init__.py
├── migrations
│   └── __init__.py
├── models.py
├── tests.py
└── views.py

创建好了blog这个app之后需要,还需要将这个app添加到项目mysite里面去,添加进去以后django会帮我们对项目进行管理,比如数据库更新之类的。

编辑当前目录下的mysite/settings.py来添加应用,

在settings.py中找到"INSTALLED_APPS这一项",在末尾添加应用:

INSTALLED_APPS = (

‘...‘.

‘...‘,

‘blog‘,     这是我们添加的自己的blog应用

)

views.py文件:

from django.shortcuts import render

from django.http import HttpResponse

#Create your views here

def hello(request):

return HttpResponse(‘<html>hello world</html>‘)

mysite/urls.py文件:

在utlpatterns添加hello:

urlpatterns = [

url(r‘^admin/‘, include(admin.site.urls)),

url(r‘helloworld‘, ‘blog.views.hello‘) 新加的内容

]

然后启动服务器:

$ python manage.py runserver

启动之后进入http://127.0.0.1:8000就可以看到hello world的页面了。

3.应用目录详解

views.py 响应客户请求返回html页面

models.py 定义数据库中的表

admin.py admin相关

test.py 测试相关

Django初体验:Django中的重要概念

一次Web访问的实质:

1.客户发送http请求到Web服务器

2.Web服务器返回html页面给客户

1.URL配置

建立URL和响应函数之间的关系

2.视图Views

响应客户http请求,进行逻辑处理,返回给用户html页面

3.

模型Models

描述我们服务器存储的数据(数据库的表)

4.模板templates

用来生产html页面。返回给用户的html,是由数据(模型)和模板渲染出来的。

时间: 2024-10-13 00:32:31

django初体验 学习笔记的相关文章

1Python全栈之路系列之Django初体验

Python全栈之路系列之Django初体验 Django不得不说在Python中是一个非常强大的全栈框架,而且入门也比较简单,只要你学完了基本的Django知识,接着再做一两个项目,不大不小就成,然后你再去学其它的框架你会发现,在那些小而美的框架中,你学起来将非常的快,因为你在学习Django的时候就已经学习并且体验过了Web开发流程,所以会有这么一个现象出现,有些新手朋友在学习Flask.Tornado等小而美的框架时,很多概念不是很理解,比如ORM.路由等,但你学Django就不会出现这种

Django Web开发学习笔记(5)

第五部分 Model 层 创建一个app工程.app和project的区别引用DjangoBook的说法是: 一个project包含很多个Django app以及对它们的配置. 技术上,project的作用是提供配置文件,比方说哪里定义数据库连接信息, 安装的app列表, TEMPLATE_DIRS ,等等. 一个app是一套Django功能的集合,通常包括模型和视图,按Python的包结构的方式存在. 例如,Django本身内建有一些app,例如注释系统和自动管理界面. app的一个关键点是它

Django Web开发学习笔记(4)

第四章 模板篇 上一章的内容,我们将HTML的代码和Python代码都混合在了在view.py的文件下.但是这样做的坏处无疑是明显的,引用DjangoBook的说法: 对页面设计进行的任何改变都必须对 Python 代码进行相应的修改. 站点设计的修改往往比底层 Python 代码的修改要频繁得多,因此如果可以在不进行 Python 代码修改的情况下变更设计,那将会方便得多. Python 代码编写和 HTML 设计是两项不同的工作,大多数专业的网站开发环境都将他们分配给不同的人员(甚至不同部门

Django Web开发学习笔记(1)

一.Python的标准类型 (1)bool型 >>> bool("") False >>> bool(None) False >>> bool(False) False (2)数值型 Python的数值型数据包含两类:int和float型数据,需要注意的是还有一个complex的类型,也就是复数类型 >>> a = complex(1,3) >>> a (1+3j) >>> b

Django初体验——搭建简易blog

前几天在网上看到了篇采用Django搭建简易博客的视频,好奇心驱使也就点进去学了下,毕竟自己对于Django是无比敬畏的,并不是很了解,来次初体验. 本文的操作环境:ubuntu.python2.7.Django1.8.6.Pycharm5.其实自从使用了ubuntu之后就很神奇的喜欢上了它,真的用起来方便很多. 1.Django项目文件并创建blog应用 (1)可以在终端中建立Django项目,使用django-admin startproject ...直接上图: 建立blog应用: (2)

PHPWeb开发入门体验学习笔记

一.PHP应用程序开发须知 1.入门要点 程序员三个阶段:码农(速成技能)->工程师(长期知识)->专家(研究论文) 编程三要素:声明变量(系统.全局.字段等).数据算法(应用.比较.计算等) .控制结构(变更.判断.循环等) 类三要素:封装.继承.多态 PHPweb应用程序开发分两端:前台Html+Css+JavaScript静态页面或UI美工平面设计,后台PHP+MySQL动态网页设计或交互式数据处理 php知识要点:函数.数组.面向对象 php运行开发环境:lwamp集成运行环境Linu

Django初体验(一):自定义表单提交

注:本人使用的Django1.8.3版本进行测试 除了使用Django内置表单,有时往往我们需要自定义表单.对于自定义表单Post方式提交往往会带来由CSRF(跨站请求伪造)产生的错误"CSRF verification failed. Request aborted." 本篇博客只要针对"表单提交"和"Ajax提交"两种方式来解决CSRF带来的错误 一.表单提交 Template: <!DOCTYPE html> <html

django初体验草稿

学习django的基础的东西:python基础(虽然自己看了一遍,不过还有好多东西都是一知半解的,所以还要重复看,去加强自己的基础). 数据库SQL(自己也是对一些基础语句运用的不熟练,然后接下来的主要任务是学习数据库的备份管理,以及多去了解一些SQL语句. HTTP协议(不怎么了解,要多去补补.) HTML&CSS(有所了解,能看懂一点,但是不会用) 正则表达式(python基础里面的,没怎么重视,还得好好补补.) 因为我在linux终端上用不了django,所以就直接在windows上装上了

Django初体验

Django Django安装 pip3 install django==1.11.9 # 使用==可以指定安装版本 创建一个Django项目 django-admin startproject mysite # 使用django-admin 命令安装 Django项目目录介绍 mysite/ ├── manage.py # 管理文件 └── mysite # 项目目录 ├── __init__.py ├── settings.py # 配置 ├── urls.py # 路由 --> URL和函