Django创建项目 流程

  1. 创建项目

Django-admin startproject 项目名

  1. cd 项目 创建子应用

Python manage.py startapp 子项目名

  1. 把项目添加到编辑器

  2. 进入主项目的setting.py文件配置

(1) INSTALLED_APPS里面添加子项目的名字

(2) MIDDLEWARE把这里面的跨域请求注释掉

(3) TEMPLATES—>‘DIRS’: [os.path.join(BASE_DIR,‘templates’)],

(4) 想用mysql先创建个数据库

然后配置 记得改数据库名称 和密码

DATABASES = {

‘default’: {

#连接mysql

‘ENGINE’: ‘django.db.backends.mysql’,

#数据库名称

‘NAME’: ‘s2’,

#数据库用户

‘USER’:‘root’,

#密码

‘PASSWORD’:‘mysql’,

#ip 不填默认localhost

‘HOST’:’’,

#端口 不填 默认就是3306

‘PORT’:’’,

#数据库配置

#自动提交

‘OPTIONS’:{‘autocommit’:True}

}

}

然后在主项目的__init__.py文件下

#导包

import pymysql

#进行初始化

pymysql.install_as_MySQLdb()

(5) 如果用sqlite3

python manage.py migrate 迁移自带的数据库

随后Python manage.py createsuperuser注册admin账户

(6) 把语言时区改了

LANGUAGE_CODE = ‘zh-Hans’

TIME_ZONE = ‘Asia/Shanghai’

(7) 添加

STATICFILES_DIRS =(

os.path.join(BASE_DIR, ‘static’),

)

  1. 随后在大的项目下创建tamplate和static文件夹

  2. 路由分发

  3. 把主项目的urls.py复制在子项目里面 把子项目的urls.py里面的path(‘admin/’, admin.site.urls),删了 导入子项目的views文件

  4. 然后看题目要求 用到的数据库类型

(1) 一对一 数据库外键类型OneToOneField(to, on_delete, parent_link=False, options)

(2) 一对多 数据库类型

保留原数据ForeignKey(关联表名,null=True,on_delete=models.SET_NULL)

不保留原数据ForeignKey(关联表名,null=True,on_delete=models.CASCADE)

(3) 多对多 数据类型.ManyToManyField(关联表名)

(4) Mysql数据库的话 后面跟上这个 在mysql数据库下能看到你建的表名 不跟也行

class Meta:

db_table = ‘user’

(5) Sqlite3 跟上这个 在admin后台能看只管的看到你用的啥表

class Meta:

verbose_name_plural = ‘自定义的表名’

def str(self):

return self.name

然后再子项目的admin.py里面导入你的models.py文件

From 子项目名 import models

admin.site.register(models.表名)

  1. 表建好之后在template文件夹下写模板 记住几点

(1) form表单提交要在form标签里面写上action 里面是你要提交的路径 method是你以POST还是GET方式提交 如果用到上传图片写enctype="multipart/form-data"然后要写name值之后传到后端获取数据的时候要用到 记得写上一个提交按钮

  1. 在子项目的views.py文件下写后端代码(接口)

(1) 导模块

from django.shortcuts import render,redirect,reverse

from django.http import HttpResponse

from myapp.models import * 这个是数据库模块

(2) 起名字的时候最好首字母大写 标准规范

(3) 之后就是写接口 记得一个接口一个路由

(4) 获取前台的name值

Request.PSOT/GET.get(‘前端的name值’)

获取图片

fp=Request.FILES.get(‘前端的name值’)(记得要在static里面建一个img文件夹)

获取图片的时候要 导包

from 主项目.settings import STATICFILES_DIRS

import os

import hashlib

import time

Md5加密
md5加密可以避免多个用户在上传图片的时候用同一个图片名

在普通视图下写时间 把时间加在md5加密下面
把md5生成的密码进行拼接,就能预防多个用户同时使用一个图片名

大致流程就是那样

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值