Django基础—1
一、 Django的安装
1、 查看已安装的Django的版本
进入到终端以及Python的交互模式
python3/ ipython3
2、 交互模式中输入import django
如果未报错:说明已经安装过
如果报错:说明未安装
3、 查看已安装的版本
交互模式中:django.VERSION
安装
1、 在线安装 - 使用 pip /pip3
sudo pip3 install django
(默认安装Django的最高版本)
sudo pip3 install django==1.11.8
(指定安装1.11.8版本)
2 离线安装
1 下载所需要的Django包
2 在环境中解压Django包
tar -xvf Django-1.11.8.tar.gz
3 进入到Django-1.11.8
cd Django-1.11.8
4 安装
sudo python3 setup.py install
Django官网:http://www..djangoproject.com
中文网站:Djangobook
二、 使用Django
1 创建Django项目
mkdir Django --创建目录,用于保存项目
使用 django-admin 指令,创建Django项目
django-admin startproject 项目名
2 启动服务,用于访问
在创建好的项目中,找到 manage.py文件
通过 manage.py启动项目(服务)
python3 manage.py runserver
3 访问网站
启动服务之后,在浏览器中,通过以下网址访问:
http://localhost:8000
4 Django 中的应用
1) 什么是应用
应用就是网站中的一个独立的模块程序
在Django中,主目录一般不处理用户的请求,主要做的是项目的初始化,以及请求的分发
2) 创建应用
1 命令
./manage.py startapp 应用名称(news)
ex:
./manage.py startapp news
3) 在settings.py中进行注册
INSTALLED_APPS 中追加应用名称
INSTALLED_APPS[
'news']
5 设置访问路径
1 主模块设置urls.py
from django.conf.urls import url, include
from django.contrib import admin urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^', include('news.urls')),
]
2 应用模块设置urls.py
1)在应用中新建文档urls.py
from django.conf.urls import url
from .views import * urlpatterns = [
url(r'^01_news/$', news_views), ]
2)设置urls.py匹配的views.py
模板的加载
使用 render 直接加载并返回模板
from django.shortcuts import render
def xxx_views(request):
return render(request,"模板名称",{})
from django.shortcuts import render
from .models import *
from django.http import HttpResponse def news_views(request):
return render(request, '01_news.html')
3)设置views.py对应渲染的模板xxx.html
1 在应用下创建templates文件夹,在文件夹下新建文档xxx.html
文档内容 html:5 快捷键
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>
{% block title %}
01-news
{% endblock %}
</title>
</head>
<body>
<h1>这是 01_news页面</h1>
{% block content %}
<h1>这是可以被更改的内容</h1>
{% endblock %}
<h1>这是网页的底部信息</h1>
{% block bottom %}
{% endblock %} </body>
</html>
4 数据模型类
利用Django开发网站系统,一般情况下,要先编写数据模型,就是在应用中models.py中的类,这个类与数据库中的数据表有对应的关系
from django.db import models
from django.utils import timezone
from django.contrib.auth.models import User
class BlogArticles(models.Model):
title = models.CharField(max_length=300)
author = models.ForeignKey(User,related_name='blog_posts')
body = models.TextField()
publish = models.DateTimeField(default=timezone.now) class Mwta:
ordering- ('-publish',) def __str__(self):
return self.title
语法:
属性 = models.数据字段(字段选项)
Django中提供的数据字段 和 字段选项` 4rr4rrrr
数据字段(Field Type)
1、BooleanField()
2、CharField()
3、DateField()
4、DateTimeField()
5、DecimalField()
6、EmailField() # 存电子邮件 - varchar
7、FloatField()
8、ImageField() # 存图片路径 - varchar
9、IntegerField()
10、URLField() # 存网站地址 - varchar
11、TextField() # 存大量数据 - text
字段选项(Field Options)
1、max_length
指定数据的最大长度
2、default
为当前属性(字段)指定默认值
3、null
指定当前属性(字段)是否允许为空,默认是false
最新文章
- 新浪微博客户端(35)-使用NSMutableAttributedString实现多行文本的效果
- coursera 机器学习课程 GraphLab环境准备
- C# Form实现自定义光标
- 数列(codevs 1141)
- 零成本实现接口自动化测试 – Java+TestNG 测试Restful service
- UESTC 250 windy数(数位DP)
- Web前端发展简史
- 创建一个cocos2d-x工程添加一个自定义Scene并显示
- 【HDOJ】2086 A1 = ?
- JKXY的视频内容下载工具类
- Fiddler如何模拟弱网环境进行测试
- [Luogu3676]小清新数据结构题
- poj1947(树形背包)
- jQuery效果之jQuery实现图片的依次加载图片
- Anchor 的两种编程实现
- linux中截取文件的特定字节(去掉utf-8 bom头)
- pvr.ccz 与 png 格式 互转的解决方案
- Archlinux系统配置学习笔记(一)
- 华为S5300系列交换机限制特定IP可以登录Web
- Android 基于 Speex 的高度封装语音库,0 耦合,没三方jar包