django 基础

创建django 项目

django-admin startproject mysite

目录介绍
        mysite
            - mysite        # 对整个程序进行配置
                - init
                - settings  # 配置文件
                - url       # URL对应关系
                - wsgi      # 遵循WSIG规范,生产环境中一般不用django自带的wsgi,而是这个uwsgi + nginx
            - manage.py     # 管理Django程序:
                                - python manage.py
                                - python manage.py startapp xx
                                - python manage.py makemigrations
                                - python manage.py migrate

创建app

python manage.py startapp cmdb

cmdb:
        migrations     数据修改表结构,django根据这个来判断表是否有改动,有改动就可以通过命令更新数据库中的表结构
        admin          Django为我们提供的后台管理
        apps           配置当前app
        models         ORM,写指定的类  通过命令可以创建数据库结构
        tests          单元测试
        views          业务代码

创建完项目后的基本配置:

数据库

 1 DATABASES = {
 2     ‘default‘: {
 3     ‘ENGINE‘: ‘django.db.backends.mysql‘,
 4     ‘NAME‘:‘dbname‘,
 5     ‘USER‘: ‘root‘,
 6     ‘PASSWORD‘: ‘xxx‘,
 7     ‘HOST‘: ‘‘,
 8     ‘PORT‘: ‘‘,
 9     }
10 }

数据库

# 由于Django内部连接MySQL时使用的是MySQLdb模块,而python3中还无此模块,所以需要使用pymysql来代替

 

# 如下设置放置的与project同名的配置的 __init__.py文件中

 

import pymysql

pymysql.install_as_MySQLdb() 

模板

1 TEMPLATE_DIRS = (
2         os.path.join(BASE_DIR,‘templates‘),
3     )
4 #这里就是配置模板文件夹的可以将 ‘templates’改成自己的

模板文件夹配置

静态文件

1 STATIC_URL = ‘/static/‘
2 STATICFILES_DIRS = (
3         os.path.join(BASE_DIR,‘static‘),
4     )

定义静态文件

路由系统:

视图基本方法:

 1 def func(request):
 2                 # request.method   GET / POST
 3
 4                 # http://127.0.0.1:8009/home?nid=123&name=alex
 5                 # request.GET.get(‘‘,None)   # 获取请求发来的而数据
 6
 7                 # request.POST.get(‘‘,None)
 8
 9
10                 # return HttpResponse("字符串")
11                 # return render(request, "HTML模板的路径",{"obj":obj 给前端模板传递参数这里也可以用locals()传递所有本地变量})
12                 # return redirect(‘/只能填URL   /home) 这里就又转发给url,然后转给home视图

获取数据基本方法

request.POST

request.GET

request.FILES

获取checkbox和select多选参数
request.POST.getlist(‘city‘)#获取的name

上传文件
    # 上传文件,form标签做特殊设置增加enctype="multipart/form-data
    obj = request.FILES.get(‘image‘)
    obj.name #输出文件名字,如果打印obj实际返回的也是文件名,因为在类中定义了__str__或__repr__ 来指定类返回的输出,str优先级高于repr    #obj的type ===》<class ‘django.core.files.uploadedfile.InMemoryUploadedFile‘>
    f = open(obj.name, mode=‘wb‘)
        for item in obj.chunks():
            f.write(item)
        f.close()
    

模板渲染基本方式:

获取变量
<div>{{current_user}}</div>

for循环
{% for k,v in user_list.items %}
      {{ k }}:{{ v }}
{% endfor %}

if判断,注意模板语言中的空格不能少
{% if row == "zhangs" %}
    <li>{{ row }}</li>
{% else %}
      <li>else 不需要end</li>
{% endif %}

获取字典或列表指定值
<a> {{ user_list.1 }}等同于list[1] </a>、
<a> {{ user_dict.k1 等同于dict[‘k1‘]}} </a>
<a> {{ user_dict.k2 }} </a>
                        
时间: 2024-10-06 20:05:39

django 基础的相关文章

Python Day19-20(Django基础)

一.Django基础 1.基本配置补充 可以用pycharm一键创建工程和APP 其他常用命令: python manage.py runserver 1.1.1.1:8000 python manage.py startapp appname python manage.py syncdb python manage.py makemigrations python manage.py migrate python manage.py createsuperuser 数据库配置 setting

Django 基础教程

Django 基础教程 这是第一篇 Django 简介 ?  Django 是由 Python 开发的一个免费的开源网站框架,可以用于快速搭建高性能,优雅的网站! 你一定可以学会,Django 很简单!本教程一直在更新,从开始写到现在大概写了一年多了,现在也一直在坚持写,每一篇教程都可能随时更新,可以在网站首页看到最近更新的情况. 我阅读学习了全部的 Django英文的官方文档,觉得国内比较好的Django学习资源不多,所以决定写自己的教程.本教程开始写的时候是 Django 的版本是 1.6,

Python之路-(js正则表达式、前端页面的模板套用、Django基础)

js正则表达式 前端页面的模板套用 Django基础 js正则表达式: 1.定义正则表达式 /.../  用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m 表示多行匹配 登录注册验证: test: 判断字符串是否符合规定的规则 rep = /\d+/;   (定义规则) rep.test('')   (引号里面必须包含字母和数字才返回true,否则为false) rep = /^\d+$/; (只有是纯数字时候才返回true,否则是false) exe

Django[基础知识]

Python功能最全的WEB框架:Django,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. 使用Django需进行以下操作: 1.创建Django项目,创建方式有两种. a.命令操作: django-admin startproject  dg_web   //dg_web为项目名称 b.直接在开发环境IDE下进行新建django项目 创建项目之后的文件目录如下: 2.在创建的项目下建立功能程序,操作如下: 命令行:python manage.py startap

Django基础和基本使用

Django基础 Django是Python下的一款著名的Web框架 框架 任何语言进入到高级部分时,会有认证.session.http.连接数据库等等功能操作,没有框架时需要自己实现 框架 是整个或部分系统的可重用设计,表现为一组抽象组件及组件实例间交互的方法: Django优点 自带轮子众多,方便快速开发 如Auth,Cache,模板等 天生的MVC设计模块 实用的后台管理 自带ORM,Template,Form,Auth核心组件 简洁的url设计 周边插件丰富 Django缺点 重 同步阻

2 Django基础

1 django目录文件 1.1 自动生成的文件和文件夹 __init__.py:告诉 Python 该目录是一个 Python 包 settings.py:Django全局配置文件 urls.py:Django路由文件 wsgi.py:(Python Web Server Gateway Interface)服务器网关接口 templates:放置HTML文件的地方 manage.py:启动Django的主要文件 1.2 使用命令新建app 首先执行:Tools > Run manage.py

Python学习之旅—Django基础

前言  前段时间业务比较繁忙,没时间更新博客,从这周开始将继续为各位更新博客.本次分享的主题是Django的基础部分,涵盖Django MTV三部分,并通过一个简单的班级管理系统来说明如何使用Django进行开发,好啦,开始今天的主题吧! 一.浅谈MVC.MTV和MVVM 要学习Django,我们很有必要了解下MVC,MTV和MVVM三种模式. [001]MVC MVC(Model View Controller 模型-视图-控制器)是一种Web架构的模式(本文不讨论桌面应用的MVC),它把业务

Django基础之MTV模型

一.Django基础 一.Django简介 Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型(Model).视图(View)和控制器(Controller).它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件.并于2005年7月在BSD许可证下发布.这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的. 1.mvc简介 http://blog.csdn.net/pi9n

Web框架和Django基础

核心知识点 1.web应用类似于一个socket客户端,用来接收请求 2.HTTP:规定了客户端和服务器之间的通信格式. 3.一个HTTP包含两部分,header和body,body是可选,\r\n分隔头部,\r\n\r\n分隔头部和身体. 4.WSGI:定义了用python编写的web服务程序和web应用程序的接口格式. 5.python标准库提供的独立的协议叫wsgiref,django也是使用它作为环境. 6.Django的目录结构(基本的:settings.py urls.py wsgi

Django基础01

我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. import socket sk = socket.socket() sk.bind(("127.0.0.1", 80)) sk.listen(5) while True: conn, addr = sk.accept() data = conn.recv(8096) conn.send(b"OK") conn.clo