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. IDEA只有Commit没有Push按钮

    问题描述 idea的右上角只有commit按钮,而没有push按钮 问题解决 打开File->Settings->Menus and Toolbars->Navigation Bar ...

  2. 【dependencyManagement版本管理】dependencies.dependency.version is missing

    maven 的gav的v(版本问题) 报错dependencies.dependency.version is missing 出现的场景 一个项目中有多个模块 父模块中出现dependencies. ...

  3. 游戏视野系统算法 (FOV using recursive shadowcasting)

    原理 http://www.roguebasin.com/index.php?title=FOV_using_recursive_shadowcasting python代码实现 http://www ...

  4. C++知识概要

    static的用法和作用 在全局变量前加上关键字 static,全局变量就定义成一个全局静态变量.存储在静态存储区,在整个程序运行期间一直存在.同时全局静态变量在声明他的文件之外是不可见的 在局部变量 ...

  5. [Java]数据分析--数据可视化

    时间序列 需求:将一组字符顺序添加到时间序列中 实现:定义时间序列类TimeSeries,包含静态类Entry表示序列类中的各项,以及add,get,iterator,entry方法 TimeSeri ...

  6. Zabbix 架构

    Zabbix 架构 1.Zabbix Server Zabblx server是agent程序报告系统可用性.系统完整性和统计数据的核心组件,是所有配置信息.统计信息和操作数据的核心存储器. 2.Za ...

  7. Ansible_描述角色结构

    一.利用角色构造ansible playbook 1.What's 角色 1️⃣:Ansible角色提供了一种方法,让用户能以通用的方式更加轻松地重复利用Ansible代码. 我们可以在标准化目录结构 ...

  8. Linux服务之nginx服务篇五(静态/动态文件缓存)

    一.nginx实现静态文件缓存实战 1.nginx静态文件缓存 如果要熟练使用nginx来实现文件的缓存,那下面的几个指令你必须要牢记于心 (1)指令1:proxy_cache_path 作用:设置缓 ...

  9. TB6560步进电机驱动板

    极客工坊比较好的帖子: 关于驱动板的共阴极和共阳极接法 http://www.geek-workshop.com/thread-12695-1-1.html

  10. C++ STL 里为什么不维护一个 size 成员变量?

    回答: 为什么 GCC 里要把 list::size() 的复杂度搞成 O(N)? 一通搜索后终于看到有这样的讨论:关于 list::splice() 函数. list 是链表结构,它的优势就在于可以 ...