Day058--django--app
form表单使用的注意事项:
1. action="" method="post" action 提交的地址 method 请求的方式
2. input标签要有name属性
3. 有一个input的类型是sumbit 或者 button按钮
注释掉settings.py中的MIDDLEWARE中的'django.middleware.csrf.CsrfViewMiddleware'
就可以提交post请求, 否则出现403拒绝访问
GET和POST的区别:
1. GET 获取一个页面
login/?user=alex&pwd=alexdsb
在Django中获取数据
request.GET {}
request.GET['user']
request.GET.get('user')
2. POST 提交数据
数据不可见 请求体中
在Django中获取数据
request.POST {}
request.POST['user']
request.POST.get('user')
重定向:
redirect('http://www.baidu.com' )

如果/index/ 的前面没有加/ ,则url叠加, /代表根 返回location的响应头


2. APP
项目 老男孩
APP python学院 linux学院
创建APP
1. 命令行:
python manage.py startapp app名称
2. pycharm
tools run manage.py task
startapp app名称
注册app
INSTALLED_APPS 列表中添加
'app01',
'app01.apps.App01Config' # 推荐写法


删除app
'''
You need to remove or check the following: 1. Remove the app from INSTALLED_APPS.
2. Remove any database tables for the models in that app (see app_name_model_name in your database).
3. Check for any imports in other apps (it could be that they're importing code from that app).
4. Check templates if they are using any template tags of that app (which would produce errors if that app is no longer there).
5. Check your settings file to see if you're not using any code from that app (such as a context processor in your_app/context_processors.py, if it has such as file).
6. Check if any static content of the app is used in other apps.
7. Remove the app directory entirely.
When you've been following proper coding principles (i.e., each Django app is a self-contained part of the web application) then most situations above won't occur.
But when other apps do use some parts of that app, you need to check that first as it may require refactoring before deleting the app. This answer refers to https://stackoverflow.com/questions/11382734/how-to-delete-an-app-from-a-django-project.
'''
3. ORM介绍和使用 Object Relational Mapping 对象关系映射
1. 使用mysql数据的步骤:
1. 创建mysql数据库
2. 在settings.py 中配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'day58',
'HOST': '127.0.0.1',
'PORT': 3306,
'USER': 'root',
'PASSWORD': '',
}
3. 告诉Django使用pymysql模块连接mysql数据库
在与settings.py同级目录下的__init__.py中写代码:
import pymysql
pymysql.install_as_MySQLdb()
4. 在models.py中写类(models.Model):
class User(models.Model):
name = models.CharField(max_length=32)
pwd = models.CharField(max_length=32)
5. 执行数据量迁移的命令行:
python manage.py makemigrations # 把models.py的变更记录记录下来
python manage.py migrate # 把变更记录的操作同步到数据库中

2. ORM的操作:
1. all 获取所有数据
models.User.objects.all() ——》 对象列表
2. get 获取某一条数据(没有或者是多个的时候报错)
models.User.objects.get(name='alex') ——》 对象
3. filter 获取满足条件的所有的对象
models.User.objects.filter(name='alex',pwd='1') ——》 对象列表
4. obj.name name字段的值
obj.pwd pwd字段的值
obj.id obj.pk
Day058--django--app的更多相关文章
- Python-Django 第一个Django app
第一个Django app by:授客 QQ:1033553122 测试环境: Python版本:python-3.4.0.amd64 下载地址:https://www.python.org/do ...
- Django APP打包重用
引言 有时候,我们需要将自己写的app分发(dist)给同事,分享给朋友,或者在互联网上发布,这都需要打包.分发我们的app. Django的子系统重用是基于app级别的.也就是一个项目可以包含多个互 ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第一部分(Page 6)
编写你的第一个 Django app,第一部分(Page 6)转载请注明链接地址 Django 2.0.1 官方文档翻译: Django 2.0.1.dev20171223092829 documen ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第七部分(Page 12)
编写你的第一个 Django app,第七部分(Page 12)转载请注明链接地址 本节教程承接第六部分(page 11)的教程.我们继续开发 web-poll应用,并专注于自定义django的自动生 ...
- Django 2.0.1 官方文档翻译:编写你的第一个 Django app,第六部分(Page 11)
编写你的第一个 Django app,第六部分(Page 11)转载请注明链接地址 本教程上接前面第五部分的教程.我们构建了一个经过测试的 web-poll应用,现在我们会添加一个样式表和一张图片. ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第五部分(Page 10)
编写你的第一个 Django app,第五部分(Page 10)转载请注明链接地址 我们继续建设我们的 Web-poll 应用,本节我们会为它创建一些自动测试. 介绍自动测试 什么是自动测试 测试是简 ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第四部分(Page 9)
编写你的第一个 Django app,第四部分(Page 9)转载请注明链接地址 该教程上接前面的第三部分.我们会继续开发 web-poll 应用,并专注于简单的表单处理和简化代码. 写一个简单的表单 ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第二部分(Page 7)
编写你的第一个 Django app,第二部分(Page 7)转载请注明链接地址 本教程上接前面的教程.我们会配置数据,创建你的第一个 model,并对Django 自动生成的 admin 站点进行快 ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第三部分(Page 8)
编写你的第一个 Django app,第三部分(Page 8)转载请注明链接地址 本页教程接前面的第二部分.我们继续开发 web-poll app,我们会专注于创建公共接口上 -- "视图& ...
- [python][django学习篇][2]创建django app
推荐学校django博客:http://pythonzh.cn/post/8/ django app 可以理解为一个文件夹: 里面包含了相关功能的代码.通过manage.py来创建 web app 激 ...
随机推荐
- transform旋转,平移,缩放,扭曲 斜切
transform 改变rotate 旋转translate 位移scale 缩放 skew 斜切变形 记得兼容性:-webkit- -moz- -ms- -o- transf ...
- 使用vue-cli快速搭建vue项目
直接上干货...... 步骤: 1.安装node.js:(下载地址:https://nodejs.org/en/download/)安装完成以后,在命令窗口输入node -v 查看node版本. ...
- Go语言打造以太坊智能合约测试框架(level2)
传送门: 柏链项目学院 第二课 智能合约自动化编译 前期内容回顾 之前我们的介绍的是如何通过solc编译智能合约,并且调用智能合约,本节我们继续实践,将智能合约的代码自动化编译以及abi文件生成搞定. ...
- 什么是validationQuery
validationQuery是用来验证数据库连接的查询语句,这个查询语句必须是至少返回一条数据的SELECT语句.每种数据库都有各自的验证语句,下表中收集了几种常见数据库的validationQue ...
- Elimination Game题解
Elimination Game 这道题目出于leetcode,题目虽然很简单但是很有趣,因为有趣才能称得上游戏吧! 0x00 题目介绍 简单介绍一下题目意思 给定一个数字N(N>0),一个列表 ...
- RabbitMQ框架构建系列(一)——AMPQ协议
一.MQ 在介绍RabbitMq之前,先来说一下MQ.什么是MQ?MQ全称为Message Queue即消息队列,就是一个消息的容器, MQ是消费-生产者模型的一个典型的代表,一端往消息队列中不断写入 ...
- 修改rpm中的文件重新打包
1.安装rpmrebuild 和安装rpmbuild rpmrebuild下载链接:https://sourceforge.net/projects/rpmrebuild/files/rpmrebui ...
- [LeetCode] 20. 有效的括号
题目链接:https://leetcode-cn.com/problems/valid-parentheses/ 题目描述: 给定一个只包括 '(',')','{','}','[',']' 的字符串, ...
- 软件定义网络(Software Defined Network,SDN)简介
SDN的三大关键要素 第一关键要素是转发与控制分离,这使得网络交换机的数据转发变得更加简单.快速:同时,控制变成了网络操作系统中一个相对集中的逻辑功能. 第二个关键要素是OpenFlow协议,它向交换 ...
- MacOS10.14下Eclipse安装lombok
按照网上的教程来做,会导致eclipse启动不了,这里记录一下解决方案: 一.复制lombok.jar到../Eclipse/下 二.修改eclipse.ini,在末尾追加: -Xbootclassp ...