Django 笔记2 -- Django 项目

Django 笔记2 – Django 入门


Django 系列笔记是笔者学习、实践使用 Django 的相关笔记,大量参考了知了课堂的《Django零基础到项目实战》教程。

参考文档:
Django官方文档(英文)
Django 中文文档


一、使用 Django


1、命令行方式(cmd)

创建项目(project):

# 切换终端的路径到想要创建项目的地方
cd ....

# 格式
django-admin startproject [项目名称]

# 示例
django-admin startproject first_project

创建应用(app): app 是 django 项目的组成部分,一个app代表项目中的一个模块

# 首先需要在终端进入到项目所在的路径
cd first_project

# 格式
python manage.py startapp [app名称]

# 示例
python manage.py startapp first_app

运行项目:

# 首先需要在终端进入到项目所在的路径

# 运行项目,端口号默认为 8000
python manage.py runserver 

# 指定端口号为 5000
python manage.py runserver 5000

# 之后在浏览器输入 127.0.0.1:5000 就可以访问了

2、PyCharm 方式

需要使用 PyCharm 专业版

创建项目(project):
在这里插入图片描述

创建应用(app): 在菜单栏的 Tools 中选择 Run manage.py Task
在这里插入图片描述

# 在出现的控制台内输入命令,命令前面不需要加 python manage.py
startapp first_app

运行项目:

点击三角号即可运行项目
在这里插入图片描述
点击Edit Config 可设置运行项目的配置信息。

在这里插入图片描述

局域网访问:

  • Host 设为 0.0.0.0
  • 需要在 setting.py 文件中设置 ALLOWED_HOSTS = [‘服务器ip地址’]
  • 浏览器输入 服务器ip地址:端口号 即可访问

二、Django 项目


创建了一个名为 first_project 的 Django 项目,并创建了一个名为 index 的 app

1、项目结构

在这里插入图片描述
项目文件: 配置项目信息,管理项目

  • first_project 模块
    • settings.py:本项目的设置项,以后所有和项目相关的配置都是放在这个里面
    • urls.py:这个文件是用来配置 URL 路由,映射 URL 到视图函数中
    • wsgi.py:项目与 WSGI 协议兼容的 web 服务器入口,部署的时候需要用到的,一般情况下也是不需要修改的
  • manage.py:和项目的交互,通过在终端输入 python manage.py [子命令] 进行交互,输入python manage.py help 查看可用命令,一般情况下不应该编辑这个文件。

app 文件: 在 app 名称的模块下,处理请求

  • migrations:用来存储 ORM 模型映射到数据库的迁移脚本文件
  • models:ORM模型,对应于数据库的表
  • views:视图函数,用来处理不同的 URL

2、URL 映射基础

URL 映射配置:urls.py 的 urlpatterns 列表中配置

# 如果需要配置 URL 映射,需要导入相关的视图文件
from front import views

urlpatterns = [
	# 默认的 URL 映射,后台管理入口
	# 如果只有默认的 URL 映射,Django 会提供一个默认的主页
	path('admin/', admin.site.urls),
	
	# 自己配置 URL 映射,即把首页映射到,并且可以给该 URL 取个别名
	path('', views.index, name='index'),
]

3、视图函数基础

视图函数用来响应URL的请求,并且相应给出回复。视图函数必须有一个 request 参数,即请求信息。

返回字符串:

from django.http import HttpResponse

def index(request):
	# 字符串包装成HttpResponse对象返回
	return HttpResponse("这是首页")

返回HTML文件:

from django.template.loader import render_to_string
from django.http import HttpResponse
def book_detail(request,book_id):
	# 将模板编译后渲染成Python的字符串格式后,再包装成HttpResponse对象
	html = render_to_string("detail.html")
	return HttpResponse(html)
from django.shortcuts import render
def book_list(request):
 	# 直接将模板渲染成字符串并包装成HttpResponse对象
	return render(request,'list.html')

GOOD LUCK!


发布了158 篇原创文章 · 获赞 64 · 访问量 11万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 技术黑板 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览