Python除了爬虫、深度学习(人工智能)、数据分析等外,还可以用来开发网站系统,如我们常见的知乎,豆瓣等都是用Python开发的网站系统。

今天辰哥就来教大家如何新建属于自己的Django项目,让Django学习不再迷茫,本文会以图文的形式,一步一步的讲解,让大家看完本文后对Django不再陌生。

1、Django入门

1.安装环境

pip install django

通过上面的命令可以安装好django环境

2.新建Django项目

django-admin startproject chenge_django

这里我新建一个名为:chenge_django的Django项目。执行上面命令后,在文件夹会出现如下文件和文件夹。

进入chenge_django文件夹

里面就是Django项目的一些配置。

3.启动Django项目

进入到这个文件夹下

执行下面命令

python manage.py runserver

出现这个页面,说明启动成功,在浏览器访问:

http://127.0.0.1:8000/

浏览器页面:

看到这个页面表示你的Django项目已经可以访问。

以为这样就完了!!!下面才是真正的干货开始

2、编写应用

在开始创建应用之前先了解清楚:工程(chenge_django)和应用(app)什么关系呢?

工程(chenge_django)对应于一个网站,是配置和应用的集合应用对应于特定功能,是具体功能的载体配置和功能分离是高度模块化的体现

1.创建应用

python manage.py startapp chenge_app

通过命令可以创建一个名为:chenge_app的应用

建好之后会有如下文件:

2.编辑view.py

from django.shortcuts import render

# Create your views here.
from django.http import HttpResponse
def lyc(request):
return HttpResponse("辰哥恭喜你,你成功了---Python研究者!")

3.修改url路由

在上级文件夹(chenge_django)编辑urls.py文件,添加访问路径

from django.contrib import admin
from django.urls import path
from chenge_app import views urlpatterns = [
path('index/', views.lyc),#某个url,对应处理的函数
path('admin/', admin.site.urls),
]

其中path('index/', views.lyc),#某个url,对应处理的函数就是核心内容。

4.重新启动项目

执行下面命令

python manage.py runserver

在浏览器中访问

http://127.0.0.1:8000/index/

浏览器结果:

5.报错解决

问题1:

错误:运行django-admin startproject mydjango出现错误 ‘django-admin’ 不是内部或外部命令,也不是可运行的程序或批处理文件。

说明:django没有配置到path环境变量,需要去找到django安装目录配置到系统环境变量。如果是pip命令安装的基本不会出现这种情况。

问题2:

在启动项目的时候,如果出现上面这种报错的情况,说明你刚刚编辑的文件保存为非UTF-8格式。改为UTF-8格式即可。

3、小结

1、为了大家方便学习,我把本文的完整源码上传,需要的通过同名公众领取:django

2、本文讲解了Python Web框架Django入门,不明白的地方可以在下方留言,一起交流。

分分钟教你Python Web开发框架Django的更多相关文章

  1. 全面解读Python Web开发框架Django

    全面解读Python Web开发框架Django Django是一个开源的Web应用框架,由Python写成.采用MVC的软件设计模式,主要目标是使得开发复杂的.数据库驱动的网站变得简单.Django ...

  2. 全面解读Python Web开发框架Django,利用Django构建web应用及其部署

    全面解读Python Web开发框架Django Django是一个开源的Web应用框架,由Python写成.采用MVC的软件设计模式,主要目标是使得开发复杂的.数据库驱动的网站变得简单.Django ...

  3. Python Web开发框架Django

    花了两周时间,利用工作间隙时间,开发了一个基于Django的项目任务管理Web应用.项目计划的实时动态,可以方便地被项目成员查看(^_^又重复发明轮子了).从前台到后台,好好折腾了一把,用到:HTML ...

  4. python Web开发框架-Django (1)

    以前用web.py(另外一款轻量级web开发框架)做一个监控管理平台,没有做特别的记录就不好拾起来.最近做一个日志聚合系统,使用的是django,这次就记下来,方便查询. Django是一个高效的we ...

  5. python Web开发框架-Django (2)

    接上篇文章,介绍一些实用的技巧和注意点.首次用MarkDown编辑,感觉行空隙太大,不是那么好看. GET/POST 前后端会有数据交互,使用JQuery来实现get/post请求 GET 方法1:通 ...

  6. 5个最好的Python Web开发框架

    Python是最受欢迎的和最有效率的开发语言之一.Python能让你更快完成工作,并且更有效地集成系统.Python是动态的面向对象的语言.即便你刚刚开始学习Python,也立即就能获得生产力上的提升 ...

  7. 我的第一个python web开发框架(14)——后台管理系统登录功能

    接下来正式进入网站的功能开发.要完成后台管理系统登录功能,通过查看登录页面,我们可以了解到,我们需要编写验证码图片获取接口和登录处理接口,然后在登录页面的HTML上编写AJAX. 在进行接口开发之前, ...

  8. Python web(Django)连接Sql server

    (开开心心每一天~ ---虫瘾师) Python Web(Django) 与SQL SERVRE的连接----Come QQ群:607021567(里面有很多开源代码和资料,并且python的游戏也有 ...

  9. Python Web(Django)与SQL SERVER的连接处理

    (开开心心每一天~ ---虫瘾师) Python Web(Django) 与SQL SERVRE的连接----Come QQ群:607021567(里面有很多开源代码和资料,并且python的游戏也有 ...

随机推荐

  1. Day008 数组的使用

    数组的使用 For-Each循环 数组作方法入参 数组作返回值 用普通for循环遍历 int[] arrays={1,2,3,4,5}; //打印全部的数组元素 for (int i = 0; i & ...

  2. PHP 判断当前日期是否是法定节假日或者休息日

    1.代码如下 $date = date("Ymd",time()); $url = "http://api.goseek.cn/Tools/holiday?date=&q ...

  3. LeetCode 26. 删除有序数组中的重复项

    双指针法 分析: 设置两个指针:p1,p2,初始p1指向数组的第一个元素,p2指向第二个元素 1)如果p1的值 == p2的值,就让p2后移一位 2)如果p1的值 != p2的值,修改p1的下一个元素 ...

  4. 0902-用GAN生成动漫头像

    0902-用GAN生成动漫头像 目录 一.概述 二.代码结构 三.model.py 3.1 生成器 3.2 判别器 四.参数配置 五.数据处理 六.训练 七.随机生成图片 八.训练模型并测试 pyto ...

  5. MySQL查看及杀掉链接方法大全

    前言: 在数据库运维过程中,我们时常会关注数据库的链接情况,比如总共有多少链接.有多少活跃链接.有没有执行时间过长的链接等.数据库的各种异常也能通过链接情况间接反应出来,特别是数据库出现死锁或严重卡顿 ...

  6. 最优运输(Optimal Transfort):从理论到填补的应用

    目录 引言 1 背景 2 什么是最优运输? 3 基本概念 3.1 离散测度 (Discrete measures) 3.2 蒙日(Monge)问题 3.3 Kantorovich Relaxation ...

  7. KMP(The Knuth-Morris-Pratt Algorithm)

    本文代码来自于中国大学MOOC KMP课件下载 注释内容为自己理解,如有错误请评论,或者私信给我,谢谢 #include <stdio.h> #include "stdlib.h ...

  8. Java集合详解(二):ArrayList原理解析

    概述 本文是基于jdk8_271版本进行分析的. ArrayList是Java集合中出场率最多的一个类.底层是基于数组实现,根据元素的增加而动态扩容,可以理解为它是加强版的数组.ArrayList允许 ...

  9. Java集合详解(一):全面理解Java集合

    概述 Java所有集合类都在java.util包下,支持并发的集合在java.util.concurrent(juc)包下. 集合与数组区别: 数组大小是固定的,集合大小可以根据使用情况进行动态扩容. ...

  10. 透过“锁”事看InnoDB对并发的处理?

    一. 并发场景下的问题 相对于串行处理方式,并发的事务处理可显著提升数据库的事务吞吐量.提高资源利用率.在MySQL实际应用中,根据场景的不同,可以分为以下几类: 读读并发 读写并发 写写并发 在这些 ...