专栏首页晨星先生的自留地django(1)初次见面-我叫姜哥

django(1)初次见面-我叫姜哥

Django是个好东西,希望你来搞搞。

Django是Python下的一款网络服务器框架。Python下有许多款不同的框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。虽然Django之于Python,达不到Rail之于Ruby的一统江湖的地位,但Django无疑也是Python在网络应用方面的一位主将。

Django,发音([ˈdʒæŋɡo]),和一部电影《被解救的姜戈》同名大大提高它的知名度。

00x1 使用Django前的环境准备

这里推荐简单粗暴的:pip或者easy_install

当然你也可以用git clone在github上面下载或者在官网下载安装包。

然后可以在python中输入一下语句看看是否成功部署该环境。

>>> import django
>>> print django.get_version()

00x1为什么使用Django?

1、 快速开发

2、 大量内置的应用

  1. 后台管理系统 admin
  2. 用户认证系统 auth
  3. 会话管理系统session

3、 安全性高

  1. 表单验证
  2. 抵制大部分sql注入
  3. 抵制一些跨站脚本攻击

4、 易于拓展

00x2Django的介绍

Django是一个开放源代码的Web应用框架,由Python写成。

Django采用了MVC的软件设计模式,即模型M,视图V和控制器C。

不过有人也将它称为MTV,即Model、Template、View

1. Django特点

1. 强大的数据库功能

2. 自带的强大的后台功能

3. 优雅的网址

4. 模板系统

5. 缓存系统

6. 国际化

2. Django 文件

1. urlspy(网址入口,关联到对应的views.py中的一个函数(或者generic类),访问网址就对应一个函数)

2. viewspy(处理用户发出的请求,从urls.py中对应过来, 通过渲染templates中的网页可以将显示内容,比如登陆后的用户名,用户请求的数据,输出到网页。)

3. modelspy(与数据库操作相关,存入或读取数据时用到这个,当然用不到数据库的时候你可以不使用。)

4. formspy(表单,用户在浏览器上输入数据提交,对数据的验证工作以及输入框的生成等工作,当然你也可以不使用。)

5. adminpy(后台,可以用很少量的代码就拥有一个强大的后台。)

6. settingspy(Django 的设置,配置文件,比如数据库、web应用、时间、 DEBUG 的开关,静态文件的位置等。)

3. Django基本命令

1. 新建一个 django project

(django-admin.py startproject project-name )

一个 project 为一个项目,project-name 项目名称,改成你自己的,要符合Python 的变量命名规则(以下划线或字母开头)

我们尝试新建一个项目,可以发现。在”C:\Users\Administrator\Desktop\实战” 创建失败。

根据最后一行错位我们发现是不能存在与ascii字符的目录中,我们只需要换个目录就可以成功创建。

1. 新建APP

python manage.py startapp blog(新建一个叫blog的app)

一般一个项目有多个app, 当然通用的app也可以在多个项目中使用。

我们可以用tree这个命令来了解下我们这个项目的目录结构,会发现我们前面介绍的文件都在里面。

1. 同步数据库

python manage.py syncdb

注意:Django1.7.1及以上的版本需要用以下命令

python manage.py makemigrations

python manage.py migrate

这种方法可以创建表,当你在models.py中新增了类时,运行它就可以自动在数据库中创建表了,不用手动创建。

2. 使用开发服务器

python manage.py runserver

# 当提示端口被占用的时候,可以用其它端口:

python manage.py runserver 6666

python manage.py runserver 8888

(当然也可以kill掉占用端口的进程)

# 监听所有可用 ip (电脑可能有一个或多个内网ip,一个或多个外网ip,即有多个ip地址)

python manage.py runserver0.0.0.0:8000

# 如果是外网或者局域网电脑上可以用其它电脑查看开发服务器

# 访问对应的 ip加端口,比如 http://192.168.1.110:8000

开发服务器,即开发时使用,一般修改代码后会自动重启,方便调试和开发,但是由于性能问题,建议只用来测试,不要用在生产环境。

本文分享自微信公众号 - 晨星先生(MoXuanIT),作者:vaf

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-04-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • DNS(上) 之原理与搭建篇

    lonelyvaf
  • 黑客技能训练之攻破VulnOS 2

    lonelyvaf
  • 黑客技能训练:攻破MrRobot

    lonelyvaf
  • Django的简介

              模板语法:目的是将变量(数据库内容)如何巧妙的镶嵌到HTML页面中

    py3study
  • Django 学习笔记 1.1 创建第一个项目

    https://docs.djangoproject.com/zh-hans/2.2/intro/tutorial01/

    twowinter
  • 如何启用和连接Django管理界面

    在本教程中,我们将连接并启用Django管理站点,以便您可以管理您的博客网站。Django管理站点预先构建了一个用户界面,旨在允许您和其他受信任的个人管理网站的...

    吴凌云
  • 建立 Django 博客应用

    建立博客应用 我们已经建立了 Django 博客的项目工程,并且成功地运行了它。不过到目前为止这一切都还只是 Django 为我们创建的项目初始内容,Djang...

    追梦人物
  • Spring Cloud Gateway 限流详解

    Spring Cloud Gatway内置的 RequestRateLimiterGatewayFilterFactory 提供限流的能力,基于令牌桶算法实现。...

    用户1516716
  • Gartner:到2021年公有云市场将超过3000亿美元,今年增长率为21%

    SDNLAB
  • go-反射

    反射是指在程序运行期对程序本身进行访问和修改的能力。程序在编译时,变量被转换为内存地址,变量名不会被编译器写入到可执行部分。在运行程序时,程序无法获取自身的信息...

    新人小试

扫码关注云+社区

领取腾讯云代金券