关于Django

Django项目

一.项目小名称 创建django项目时生成

			1.__init__.py  告诉django使用pymysql连接mysql数据
			告诉django使用pymysql连接mysql数据
				import pymysql
				pymysql.install_as_MYSQLdb()
		
			2.settings.py   配置文件
				
				需要修改的几个地方:
				@1.关于静态文件static
					静态文件:STATIC_URL = "/static/"
						添加静态文件目录:
						STATICFILES_DIRS = [os.path.join(BASE_DIR,"static"]
				
				@2.网页提交的请求方式:post请求:	
					注释掉MIDDLEWARE中的 django.middleware.csrf.CsrfViewMiddleware 
				
				@3.创建app时 注册过程中 如果不是创建Django时创建的app
					在配置文件(settings)中 INSTALLED_APPS  
						方法1:在列表中添加 app名称
						方法2:在列表中添加 app名称.apps.APP名称config
							eg:INSTALLED_APPS = [
								...  #原本的内容
								...
								'app01',                   #方法1
								'app01.apps.App01Config',  # 方法2 推荐写法]
				
				@4.创建好数据库之后,进行数据库配置 DATABASES
							修改ENGINE NAME 
							添加POST:      ----->数据库的IP地址
							添加PORT:	   ------端口
							添加USER:      ------->数据库账户
							添加PASSWORD:  ------->数据库密码
							eg:DATABASES = {
										'default': {
											'ENGINE': 'django.db.backends.mysql',   # 引擎
											'NAME': 'django_day53',					# 名称
											'HOST': '127.0.0.1',					# IP地址
											'PORT': 3306,							# 端口
											'USER': 'root',							# 用户名
											'PASSWORD': '123456'						# 密码
										}}
				
				@5.命令行创建Django时,修改TEMPLATES
					命令行创建django项目时需要修改:'DIRS':[os.path.join(BASE_DIR, 'templates')]
				
				@6.部署时:修改ALLOWED_HOSTS
				
		3.urls.py   请求的地址和处理函数对应关系 
			函数主逻辑在app中的views中,所以对应关系的时候需要引入app模块
			eg:	
			from django.conf.urls import url
			from django.contrib import admin
			from app_day53 import views
			
			urlpatterns = [
				url(r'^admin/', admin.site.urls),
				url(r'^login/', views.login),]
			
		4.wsgi.py        

二.static html页面的渲染文件 (自己建的)

		css 
		js
		img
		plugins  

三.app

		1.migrations   创建django项目时生成 保存models变化
			__init__.py
		
		2.__init__.py  
		
		3.admin.py     admin组件相关  创建django项目时生成
			admin组件相关
		
		4.apps.py      app配置文件
			app配置文件
			eg:(自动生成的,在注册时修改好settings中的INSTALLED_APPS后自动修改)
				from django.apps import AppConfig
				class AppDay53Config(AppConfig):
					name = 'app_day53'
		
		5.moddels.py   跟数据库相关 通过类去建表
			1.在app下的models.py中创建数据库的表		
				class 表名(models.Model):
					字段名 = moddels.字段数据数据类型(长度)
					eg:
					class User(models.Model):
					username = models.CharField(max_length=32)  # varchar(32) 
					password = models.CharField(max_length=32)
		
		6.tests.py     单元测试
		
		7.views.py     函数 主逻辑   urls中对应的函数逻辑
			注意点:
				函数参数为request
					request:
						@1.request.method  请求方式
						@2.request.POST from表单提交POST请求的数据
							request.POST.get()
				返回值:
				from django.shortcuts import render,redirect,HttpResponse
				render(参数,"HTML文件")---->返回一个完整的html页面
				HttpResponse("内容")------>返回一个字符串
				redirect("重定向的地址")----> 1.地址是自己的地址:/地址/   2.返回一个其他的网址				
				eg:
				from django.shortcuts import render,redirect,HttpResponse
				from app_day53 import models
				def login(request):
					# 如果是请求方式是post
					if request.method == "POST":
						# 获取input框内的内容
						username = request.POST.get("username")
						password = request.POST.get("password")
						print(username,type(username))
						print(password,type(password))
					#     #将获取到内容进行校验(简易版 无拓展性)
					#     if username == "大王" and password == "123":
					#         return redirect("https://weibo.com/")
					# return render(request,"login.html")

				#     将获取的内容进行校验(与数据库里的数据进行校验)
					if models.User.objects.filter(username=username,password=password):
						return redirect("https://weibo.com/")
				return render(request,"login.html")

四.templates
html页面 urls中对应关系的html页面 ,pycharm创建Django项目直接创建好,命令行创建Django项目需要自己创建,并且在settings中修改配置TEMPLATES

	eg:
	login.html

五.manage.py 解析命令 创建django项目时生成

关于命令行内的一些语法:(推荐用该方法 而不是通过pycharm创建项目)

1.下载: pip install django==1.11.20
		pip install django==1.11.20 -i 源
  卸载:  pip uninstall django
2.创建项目:
		django-admin startproject 项目名
3.启动项目:
		python manage.py runserver    
		python manage.py runserver 80    
		python manage.py runserver  0.0.0.0:80
4.创建app
		python manage.py startapp  app名称
5.数据库迁移:
		python manage.py makemigratinos     记录modele变化记录
		python manage.py makemigrate     把变更的记录同步到数据库中
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值