Django文件夹
Django文件
App文件夹
migrations文件
- 生成models创建表的翻译语句
telemplatetags文件夹
telemplatetags文件夹下的文件专门用来创建自定义标签、自定义过滤器、自定义组件
1. 导入from djiago import template
2. register = tmplate.Library()
3.装饰器装饰某个函数@register.filretr(自定义过滤器)、@register.simple_tag(自定义标签)、@register.inclusion_tag(放组件html文件)(自定义组件)
admin文件
把数据库中的表添加到admin页面中,进行操作
from django.contrib import admin
from app01 import models
class UserinfoAdmin(admin.ModelAdmin):
list_display = ['id','username','password'] #设置显示在列表中的字段,id为Django中的默认主键
list_editable = ['username','password','telephone','email'] #设置可编辑字段
list_per_page = 50 #设置每页显示多少数据,默认为100
ordering = ('-id',) #设置默认排序字段,负号为降序排序
fk_fields = ('machine_room_id',) #设置显示外键字段 admin.site.register(models.Userinfo,UserinfoAdmin)
admin.site.register(models.Customer)
admin.site.register(models.Campuses)
admin.site.register(models.ClassList)
admin.site.register(models.ConsultRecord)
admin.site.register(models.Enrollment)
admin.site.register(models.CourseRecord)
admin.site.register(models.StudyRecord)
mymiddleware文件夹
一般用来创建中间件,需要在项目文件夹下settings文件中配置MIDDLEWARE属性,中间件才能生效
中间件文件
from django.utils.deprecation import MiddlewareMixin
from django.shortcuts import redirect
from django.urls import reverse
import re class Auth(MiddlewareMixin): #创建的类需要继承MiddlewareMixin
# white_list = ['/login/', '/register/', '/admin.*']
white_list = [reverse('login'), reverse('register'), '/admin.*']
def process_request(self,request): #定义process_request(请求时处理)
current_path = request.path #当前请求路径
for re_path in self.white_list:
reg = r"^%s$"%re_path
# print(re.search(reg, current_path).group())
if re.search(reg, current_path):
break
else:
name = request.session.get('name')
if not name:
return redirect('login')settings配置文件
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'app01.mymiddleware.zjj.Auth' #自定义中间件
]
models文件
创建数据库中的数据表
settings配置文件添加数据库配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', #设置数据库为Mysql
'NAME':'crm', #数据库名
'HOST':'127.0.0.1', #数据库IP
'PORT':3306, #数据库端口
'USER':'root', #数据库用户
'PASSWORD':'123' #数据库密码
}
}
在model文件中导入 from django.db import models,并创建数据表
from django.db import models
class Userinfo(models.Model):
username = models.CharField(max_length=32,unique=True)
password = models.CharField(max_length=32)
telephone = models.CharField(max_length=32,db_index=True)
email = models.CharField(max_length=32)
is_active = models.BooleanField(max_length=32,default=True)
def __str__(self):
return self.username
在app应用文件夹下的--init--文件中导入
import pymysql
pymysql.install_as_MySQLdb()
在终端执行数据库执行指令
python manage.py makemigrations
python manage.py migrate
Views文件
用来封装视图函数,试图函数分为cbv和fbv
CBV
from django.views import View
class Register(View): #类继承form django.views import View
def get(self,request):
pass
def post(self,request):
pass
FBV
def home(request):
if request.method == 'GET':
pass
else request.mothed == "POST":
pass
项目文件夹
settings文件
- settings文件用来配置基本信息:
DATABASES配置数据库相关,
STATICFILES_DIRS配置静态文件夹的路径,
STATIC_URL配置静态文件夹的别名,
INSTALLED_APPS配置app应用文件,
MIDDLEWARE配置中间件,
TEMPLATES配置template文件夹的一些信息,
APPEND_SLASH =False # settings文件夹下写这句话,如果别人请求我的路径的时候,你不要自己处理别人输入的路径最后面的/了
urls文件
路径文件用来分发路径
from django.conf.urls import url
from django.contrib import admin
from app01 import views urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^login/', views.Login.as_view(), name='login'), #登录
url(r'^logout/', views.logout, name='logout'), #注销
url(r'^register/', views.Register.as_view(), name='register'), #注册
statefile文件夹
用来放置静态文件,如css和js文件、图片。需要在settings文件中配置STAICFIELS属性
settings配置
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR,'statefile')
]
templates文件夹
- 放置html文件,可以进行模板渲染
Django文件夹的更多相关文章
- Django 项目中添加静态文件夹
在 mysite 文件夹下添加一个 statics 文件夹用来存放 js 文件 在 index.html 文件中添加 <!DOCTYPE html> <html lang=" ...
- Django中程序中图片资源的路径问题(static文件夹的放置)
步骤1:在settings.py文件的最后加上以下内容: STATIC_URL = '/static/'STATIC_ROOT = os.path.join(os.path.dirname(__fil ...
- 基于Ubuntu Server 16.04 LTS版本安装和部署Django之(三):设置上传文件夹权限(这里测试用完全共享)
基于Ubuntu Server 16.04 LTS版本安装和部署Django之(一):安装Python3-pip和Django 基于Ubuntu Server 16.04 LTS版本安装和部署Djan ...
- Django设置上传文件夹
django提供了两种字段类型models.FileField与models.ImageField,用于保存上传文件与图象.这两类字段提供了一个参数'upload_to',用于定义上传文件保存的路径( ...
- django创建第一个子文件夹
1.首先安装python, 我安装了Python2.7的版本,安装在了D:\Python25\2.接着安装django,我下载了django 1.6的版本.3. 安装完了之后,打开cmd,然后可以检验 ...
- Django前端HTML通过JS实现表格可编辑,动态添加行,回车完成新建文件夹
功能描述: 点击“新建文件夹”按钮,在table的末尾增加一行:单击页面的新增行,使单元格td变成可编辑状态:输入内容后,当单元格失去焦点时,保存输入的内容:回车后通过AJAX提交后台完成新建文件夹. ...
- First Django app(各个文件以及文件夹解析)
mkdir mysite cd mysite django-admin.py startproject mysite 执行上面的命令,得到一下内容: mysite/ manage.py mysite/ ...
- django中多个app放入同一文件夹apps
开发IDE:pycharm 新建一个apps文件夹 需要整理的app文件夹拖到同一个文件夹中,即apps.(弹出对话框,取消勾选Search for references) 在pycharm 中,右键 ...
- django的所有app放在一个文件夹下便于管理
1.新建一个python Package,名字叫apps 2.拖拽以后的app到apps文件夹下,把Search for references勾选去掉,重要重要重要!!!! 3.右键点击apps文件夹 ...
随机推荐
- js的reduce累加器
reduce为数组中每一个元素执行回调函数,不包括被删除或未被赋值的 https://www.jianshu.com/p/e375ba1cfc47
- idea 编译报错 Build completed with 1 error and 0 warnings in 2 s 113 ms
settings里java compiler改成正确版本 project structure里同样如此
- 搭建wordpress博客
环境说明 操作系统: CentOS 7.2 64位 1. 准备LAMP环境 LNMP 是 Linux.Nginx.MySQL 和 PHP 的缩写,是 WordPress 博客系统依赖的基础运行环境.我 ...
- GCD相关
板子: ? gcd(b, a % b) : a; } POJ1930 题意:给你一个无限循环小数,给到小数点后 9 位,要求这个数的分数形式. 解法: 要想解决这道题,首先应该了解如何将循环小数化为分 ...
- Android实战项目——家庭记账本(五)
今天博客写的有点晚(好像算是昨天的了),有一点小bug刚刚改完.今天完成的任务有: 1.统计页的布局和功能 2.主页碎片的图表功能 实现效果如下: 其中,统计 ...
- SpringBoot从1.5.1→2.2.4项目加包扫雷一:Error:(8, 44) java: 程序包org.springframework.boot.web.support不存在
更换成新包即可import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
- 【新人赛】阿里云恶意程序检测 -- 实践记录10.13 - Google Colab连接 / 数据简单查看 / 模型训练
1. 比赛介绍 比赛地址:阿里云恶意程序检测新人赛 这个比赛和已结束的第三届阿里云安全算法挑战赛赛题类似,是一个开放的长期赛. 2. 前期准备 因为训练数据量比较大,本地CPU跑不起来,所以决定用Go ...
- Wannafly Winter Camp 2020 Day 6D 递增递增 - dp,组合数学
给定两个常为 \(n\) 的序列 \(l_i,r_i\),问夹在它们之间 ( \(\forall i, l_i \leq a_i \leq r_i\) ) 的不降序列的元素总和. Solution 先 ...
- 基于WEB的车票预订信息系统设计
注册登录界面 用户输入网址以后,用自己的手机号作为账号,然后输入自己想设置的密码注册一个号,然后点击注册,即注册登录.如图5.1所示: 图5.1 车票预订信息系统注册登录界面 5.2 车票查询界面 ...
- Pikachu-目录遍历
目录遍历漏洞概述 在web功能设计中,很多时候我们会要将需要访问的文件定义成变量,从而让前端的功能便的更加灵活. 当用户发起一个前端的请求时,便会将请求的这个文件的值(比如文件名称)传递到后台,后台再 ...