1. 完整的登录示例
  
  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') 
 
HttpResponse
render
redirect
 
     
  重定向:
   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中的views中

  删除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)
 
    # def __str__(self):
      # return self.name
    
   5. 执行数据量迁移的命令行:
    python manage.py  makemigrations   # 把models.py的变更记录记录下来
    python manage.py  migrate     # 把变更记录的操作同步到数据库中
 
  如果tools-run manage.py task  直接输入 makemigrations  ->  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的更多相关文章

  1. Python-Django 第一个Django app

    第一个Django app   by:授客 QQ:1033553122 测试环境: Python版本:python-3.4.0.amd64 下载地址:https://www.python.org/do ...

  2. Django APP打包重用

    引言 有时候,我们需要将自己写的app分发(dist)给同事,分享给朋友,或者在互联网上发布,这都需要打包.分发我们的app. Django的子系统重用是基于app级别的.也就是一个项目可以包含多个互 ...

  3. Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第一部分(Page 6)

    编写你的第一个 Django app,第一部分(Page 6)转载请注明链接地址 Django 2.0.1 官方文档翻译: Django 2.0.1.dev20171223092829 documen ...

  4. Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第七部分(Page 12)

    编写你的第一个 Django app,第七部分(Page 12)转载请注明链接地址 本节教程承接第六部分(page 11)的教程.我们继续开发 web-poll应用,并专注于自定义django的自动生 ...

  5. Django 2.0.1 官方文档翻译:编写你的第一个 Django app,第六部分(Page 11)

    编写你的第一个 Django app,第六部分(Page 11)转载请注明链接地址 本教程上接前面第五部分的教程.我们构建了一个经过测试的 web-poll应用,现在我们会添加一个样式表和一张图片. ...

  6. Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第五部分(Page 10)

    编写你的第一个 Django app,第五部分(Page 10)转载请注明链接地址 我们继续建设我们的 Web-poll 应用,本节我们会为它创建一些自动测试. 介绍自动测试 什么是自动测试 测试是简 ...

  7. Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第四部分(Page 9)

    编写你的第一个 Django app,第四部分(Page 9)转载请注明链接地址 该教程上接前面的第三部分.我们会继续开发 web-poll 应用,并专注于简单的表单处理和简化代码. 写一个简单的表单 ...

  8. Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第二部分(Page 7)

    编写你的第一个 Django app,第二部分(Page 7)转载请注明链接地址 本教程上接前面的教程.我们会配置数据,创建你的第一个 model,并对Django 自动生成的 admin 站点进行快 ...

  9. Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第三部分(Page 8)

    编写你的第一个 Django app,第三部分(Page 8)转载请注明链接地址 本页教程接前面的第二部分.我们继续开发 web-poll app,我们会专注于创建公共接口上 -- "视图& ...

  10. [python][django学习篇][2]创建django app

    推荐学校django博客:http://pythonzh.cn/post/8/ django app 可以理解为一个文件夹: 里面包含了相关功能的代码.通过manage.py来创建 web app 激 ...

随机推荐

  1. python 正则验证 IP地址与MAC地址

    #coding=utf-8 import re def isValidIp(ip): if re.match(r"^\s*\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} ...

  2. 利用nginx 反向代理解决跨域问题

    说到nginx,不得不说真的很强大,也带来很多便利用于解决一些头疼的难题. 一般来说可以用来做:静态页面的服务器.静态文件缓存服务器.网站反向代理.负载均衡服务器等等,而且实现这一切,基本只需要改改那 ...

  3. align-content 与 align-items 区别

    align-content 和 align-items  : 1:共同点:它们对齐方向为交叉轴 2:不同点:align-content 应用于为 多行   而 align-items:应用于单行. 单 ...

  4. Easyui datagrid combobox输入框下拉(取消)选值和编辑已选值处理

    datagrid combobox输入框下拉(取消)选值和编辑已选值处理 by:授客 QQ:1033553122 测试环境 jquery-easyui-1.5.3   需求场景 如下,在datagri ...

  5. react native中一次错误排查 Error:Error: Duplicate resources

    最近一直在使用react native中,遇到了很多的坑,同时也学习到了一些移动端的开发经验. 今天在做一个打包的测试时,遇到了一个问题,打包过程中报错“Error:Error: Duplicate ...

  6. Python网络爬虫-信息标记

    信息标记的三种形式: XML(扩展标记语言) JSON(js中面向对象的信息表达形式,由类型的(string)键值对组成) "name":"北京理工大学" YA ...

  7. Android探究之ANR

    什么是ANR ANR:Application Not Responding,即应用程序无响应. 在Android中,ActivityManagerService(简称AMS)和WindowManage ...

  8. Windows Management Instrumentation 服务卸载并重新创建

    SC delete Winmgmt sc create Winmgmt binPath= "C:\Windows\System32\svchost.exe -k netsvcs" ...

  9. js 倒计时跳转

    用js实现简单的倒计时结束页面跳转效果,主要用到setInterval()和clearInterval()方法,页面跳转使用window.location.href = " ".倒 ...

  10. iOS多线程GCD的使用

    1. GCD 简介 Grand Central Dispatch(GCD)是异步执行任务的技术之一.一般将应用程序中记述的线程管理用的代码在系统级中实现.开发者只需要定义想执行的任务并追加到适当的Di ...