python三大主流web框架之Django安装、项目搭建
这一篇我们将迎来python强大的web框架Django,相信大家都已经不陌生,本篇将介绍Django的安装及基础项目搭建,大神略过~
Django是需要我们手动pip安装的,首先我们来安装Django
两种安装方式:命令行、pycharm
这里我们推荐下载1.11.11版本(原因嘛,大家懂的,就好像苹果系统新版本的发布总有一部分机器会成砖,一个道理)
命令行:
python2: pip install django==1.11.11
python3: pip3 install django==1.11.11
pycharm:
file > settings > Project > Project interpreter > 右上角 + 号 > 搜索框:django > Specify version选择 1.11.11 > 点击install Package
等待安装完成即可~
下一步:验证安装:命令行:django-admin 回车如果出来一大整页的信息,那么恭喜你安装成功啦!
那么下面我们就要开始创建django项目了
创建django项目前我们先来了解下django项目结构:
django项目分主项目和app应用
app概念:
一个django项目就像是一所大学
app就像是这所大学下面的各个学院
创建django项目的两种方式:
方式一(命令行创建): # python3环境下
创建ajango项目:django-admin startproject 项目名
创建app应用:python3 manage.py startapp app名(通常为appXX,如:app01)
启动django项目:python3 manage.py runserver
注意:手动命令行创建django项目默认不会创建templates文件夹,需要我们手动在项目目录创建,
这个时候需要我们自己在settings配置文件中加入该文件夹路径,见下图:

方式二(pycharm创建):
file >> new project 选择第二个django,对项目取名(不能含中文),选择本地解释器,勾选本地解释器,见下图

创建app:
方式一:pycharm命令行创建:python3 manage.py startapp appXXX (如app01)
方式二:pycharm顶部菜单Tools下面run manage task功能栏,输入命令:startapp appXXX (如app01)
运行项目:
点击菜单栏django项目名右边的绿色小箭头
!!!注意事项:1、在pycharm窗口只能有一个django在运行状态,如果多开永远只有第一个在运行,调试bug半天没反应
2、浏览器一定要设置为不保存缓存的,因为保存缓存可能会导致这次调试的前端效果仍旧是上次改动前的效果,
浏览器还没读修改后的内容,用的是缓存数据
!!!另外,想要正常运行django项目,还有几个点需要你注意,不然bug在哪里你都不知道!
1、计算机名称不可以用中文
2、一个pycharm窗口就是一个项目,不要在窗口下面的子文件夹创建项目、不要和其他项目并列
3、项目名称一定不要用中文
到这里我们的项目就搭起来了,然后还没完,我们还有些配置需要做~
注意新创建的app需要在配置文件中注册才能生效(重点)
找到settings配置文件,打开找到
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
在列表后面中加入我们创建的app名称
'app_first.apps.App_firstConfig' # 全称
或
'app_first' # 简写
好了!到这里我们的django项目就完全搭建好了~
然而作为小白的你是不是一脸懵逼.....?这么多的文件夹和文件到底是干嘛的呢?
那么接下来我们就来说说每个文件到底是干嘛的
django各个文件的作用
目录结构:
app名
migrations 数据库迁移记录相关数据
admin.py django后台管理相关
models.py 模型表相关
views.py 视图函数相关
项目名
settings.py 配置文件
urls.py 路由与视图函数的映射关系
templates
项目用到的所有的html文件
db.sqlite3
django自带的微型数据库,可做测试用
manage.py
django入口文件
django小白必备三板斧
app下的views.py文件中导入render,HttpResponse,redirect
from django.shortcuts import render,HttpResponse,redirect
给前端页面返回什么
HttpResponse(value) 返回字符串
render(request, path, values) 返回一个html页面
两种给前端页面传值的方式
def reg(request):
user_dict = {'name':'jason','password':'123'}
return render(request,'reg.html',{'user_dict':user_dict})
def reg(request):
user_dict = {'name':'jason','password':'123'}
return render(request,'reg.html',locals())
redirect 重定向
另外django还有一个很人性化的地方
运行中的项目当你修改你的项目代码后django会自动重启,有时候会比较慢,你可以手动点击重启
本篇教程到此就结束啦~~喜欢的点个赞呗~
python三大主流web框架之Django安装、项目搭建的更多相关文章
- Web框架之Django_01初识(三大主流web框架、Django安装、Django项目创建方式及其相关配置、Django基础三件套:HttpResponse、render、redirect)
摘要: Web框架概述 Django简介 Django项目创建 Django基础必备三件套(HttpResponse.render.redirect) 一.Web框架概述: Python三大主流Web ...
- 详说Flask、Django、Pyramid三大主流 Web 框架
前言 目前随着 Python 在大数据.云计算.人工智能方面的热度,Python Web 应该也会被更多企业了解使用. Python Web 框架千万种,没必要都去了解和学习,身边总有人说高手都用 F ...
- python开发学习-day15(前端部分知识、web框架、Django创建项目)
s12-20160430-day15 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...
- Python 四大主流 Web 编程框架
Python 四大主流 Web 编程框架 目前Python的网络编程框架已经多达几十个,逐个学习它们显然不现实.但这些框架在系统架构和运行环境中有很多共通之处,本文带领读者学习基于Python网络框架 ...
- Flask(1)- 主流web框架、初识flask
一.Python 现阶段三大主流Web框架 Django.Tornado.Flask 对比 Django 主要特点是大而全,集成了很多组件(例如Models.Admin.Form等等), 不管你用得到 ...
- Python开发【第十八篇】Web框架之Django【基础篇】
一.简介 Python下有许多款不同的 Web 框架,Django 是重量级选手中最有代表性的一位,许多成功的网站和APP都基于 Django. Django 是一个开放源代码的Web应用框架,由 P ...
- Python开发【第二十二篇】:Web框架之Django【进阶】
Python开发[第二十二篇]:Web框架之Django[进阶] 猛击这里:http://www.cnblogs.com/wupeiqi/articles/5246483.html 博客园 首页 ...
- Python开发【第二十一篇】:Web框架之Django【基础】
Python开发[第二十一篇]:Web框架之Django[基础] 猛击这里:http://www.cnblogs.com/wupeiqi/articles/5237704.html Python之 ...
- 两个Python web框架:Django & Tornado比较
就是说它作为 web 框架比 Django 简单,又支援异步 IO,且更不需要前端的 webserver ? 我已经混乱了, Tornado是 Nginx.Django.Node.js 的结合体?又或 ...
随机推荐
- Extension of write anywhere file system layout
A file system layout apportions an underlying physical volume into one or more virtual volumes (vvol ...
- [ACM] POJ 2689 Prime Distance (筛选范围大素数)
Prime Distance Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 12811 Accepted: 3420 D ...
- Android 悬浮窗权限校验
原文:Android 悬浮窗权限校验 悬浮窗权限: <uses-permission android:name="android.permission.SYSTEM_ALERT_WIN ...
- Oracle使用dblink连接SqlServer
使用场景:当你需要从ORACLE数据库上访问另一台SqlServer数据库的数据时,Oracle提供了一个工具:gateways.通过这个工具,你可以创建dblink来连接sqlserver或其他不同 ...
- Http请求格式(在Linux下使用telnet亲测,通过这篇我才明白)
命令行窗口中用telnet测试HTTP协议请求消息格式响应消息格式1. 命令行窗口中用telnet测试HTTP协议 HTTP消息是由普通ASCII文本组成.消息包括消息头和数据体部分.消息头以行为单位 ...
- WPF特效-鱼游动动画
原文:WPF特效-鱼游动动画 实现思路: 通过VisualBrush Binding方式获取鱼局部图像,在Viewport3D中创建ModelVisual3D块并把获取到的局部 ...
- delphi dom动态创建节点方法
在一次测试demo中 需要动态的创建xml节点并添加,实现方法如下: var NewItem:IXMLDOMElement; NewItem:=ConfigDoc.createElement('ite ...
- OC笔记一:Objective
1.OC简介 全称:Objective-C,是扩充C的面向对象编程语言,主要用于iOS和Mac OS开发. C语言的基础上,增加了一层最小的面向对象语法 完全兼容C语言 可以在OC代码中混入C语言代码 ...
- Generating Names and Classifying Names with Character-Level RNN
原文地址: Generating Names with Character-Level RNN 搬运只为督促自己学习,没有其他目的. Preparing the Data Download the ...
- Win10《芒果TV》商店版更新v3.2.3:新增应用内意见反馈、播放重试、透明磁贴
在2016圣诞节临近之际,<芒果TV>UWP版迅速更新v3.2.3版,主要是新增应用内意见反馈提交功能.播放重试.透明磁贴.动态磁贴等功能,进一步优化稳定性.视觉细节.运行速度. 芒果TV ...