Django从安装到使用

本文详细介绍了Django的安装、启动、模板系统、Cookie使用、URL路由等核心概念,包括如何创建虚拟环境、启动Django服务器、理解和使用模板语法、配置静态文件和数据库建模。此外,还探讨了视图、模型、URL调度、表单处理、Ajax请求和用户验证等方面,是初学者全面了解Django开发的实用教程。
摘要由CSDN通过智能技术生成

安装

  1. 安装python开发的虚拟环境沙盒,可用于创建多个独立虚拟空间:virtualenv
    pip install virtualenv
  2. 创建项目目录,按住shift同时右键在当前页面运行cmd
  3. 执行 python -m venv pythonDjango(环境名字):创建虚拟环境
  4. 执行 pythonDjango\Scripts\activa.bat:启动虚拟环境
  5. pip install djang :安装django框架
  6. django-admin startproject Qshop(工程名字)
    在pycharm里面打开Qshop工程,init.py:包文件,setting.py项目配置文件,urls.py项目路由文件,Wsgi.py项目的wsgi服务器对接文件
    Manage.py 项目的控制文件
  7. 在Qshop创建视图文件view.py,有了就不需要创建了
    在视图文件view.py中编写第一个简单的请求逻辑
from django.http import HttpRespons
def index(request):
return HttpResponse("hello word")

在同Qshop里面的urls.py文件内,编写调用

from Qshop.views import index #在视图文件内编写的函数名
urpatterns=[
			path('index/',index)  #前面的index是浏览器输入框端口号输入的内容,后一个index是要使用的函数名
]

Django的启动

cmd启动

  1. 切换到项目的根目录下,安装的第六步之后 cd到项目文件内
  2. 执行启动命令
python manage.py runserver
#执行命令后会看到ip地址及端口号 127.0.0.1:8000

在浏览器地址栏内输入:127.0.0.1:8000/index就可以看到上面写的index函数
pycharm启动
在pycharm中只需要点击dj图标右边的按钮就可以启动,需要注意的是,需要加载虚拟环境中的环境变量
1、当我们在浏览器当中访问了127.0.0.1:8000/index这个index这个路由
2、该地址访问到我们启动的服务器上在url(统一资源定位符)上进行了匹配
3、匹配符合的条件,然后调用我们写的index函数
4、收到返回结果
MVC
是指模型,视图,路由作为独立的模块进行开发

模板系统的基本语法

  1. 构建模板对象
  2. 构建数据结构
  3. 模板加载数据
  4. 前端传递数据
    例如
    在Qshop中的views.py文件下
from djnago.template import Context,Template
#Context 构建数据结构
#Tempplate 构建模板结构
def templateExample(request):
    #构建模板结构
	template = """
    <html>
        <head>
            <title>
                template
            </title>
        </head>
        <body>
            <h2 style="color:red;">
                name: {
  { name }}   #{
  {}}里面的是变量
            </h2>
        </body>
    </html>
     """
    template = Template(template)
    #构建数据结构
    dataDict = {"name": "老王"}
    context = Context(dataDict)
    #模板加载数据
    result = template.render(context)
    return HttpResponse(result)
    #result 返回参数

在Qshop下的urls.py
中添加

from Qshop.views import templateExample
urlpatterns = [
    path('admin/', admin.site.urls),
    path('index/', index),
    path('template/', templateExample), #添加内容
]

然后在浏览器内输入127.0.0.1:8000/template就可以看见效果
Django模板的三种元素

  1. 变量:双大括号包围的元素,变量可以通过点来调用,不需要传入参数
  2. 标签:用大括号和百分号包围的,具有语法意义的元素,判断条件写在百分号内
    例如
    {% if %} :if判断标签,可以搭配{% else %}使用,需用{% endif %}结束if标签
    {% for %}:for循环标签,需用{% endfor %}结束标签
  3. 过滤器
    Safe:可以对具有html格式的文本渲染出html效果
    如:
    { { keys|safe }}
 date={"keys":"<a href="#" >跳转到我这里</a>"}

不使用safe具有a标签形式的文本就是普通的文本,不会被当做a标签
html文件的加载调用

#方法一
from django.template.loader import get_template
def templateExamplate(request):
template=get_template("index.html")
#构建模板结构,括号内为html文件
return HttpResponse(result)
#方法2
from django.shortcuts import render_to_response
def templateExample(request):
name="老王"   #变量name的值=老王
return render_to_response("index.html",locale())
#local() 返回函数内name

创建文件夹
3. 静态文件夹目录:命名为 static,还可以细分为css,js,img…
4. 配置静态文件:在Qshop下的setting.py最后STATIC_URL=’/static/’
后面加上
STATICFILES_DIRS=(
os.path.join(BASE_DIR,“static”),
)
#指出静态文件加载位置
html模板文件
在Qshop的同级目录下创建template文件夹,用来存放模板
在Qshop下的setting.py中的

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [
            os.path.join(BASE_DIR,"template")
        ],
        #os.path.join(BASE_DIR,"template")为新加内容,指出模板文件路径
  1. 找出网站的共同之处,保留共同之处,生成模板文件base.html,放到template,使用{% block name %}和{% endblock %}块标签包裹保留一致的部分,这部分内容可以被覆盖和使用
  2. 使用模板页,首先申明{% extend “base.html” %}#来自模板页base.hrml,
    {% block name %}#模板页中呗包裹的一致部分的名字
    #也可以在两个块标签中间添加新内容,或覆盖之前的内容
    {% endblock %}#结束继承
  3. {% include %} 模板加载&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值