• Django(二)


    from表单提交的注意事项:
        1.form不是from,必须要有active,method
        2.所有获取用户输入的表单都要放在form表单里面,表单标签必须要有 
           name属性
        3.form表单必须要有submit按钮
    request.method -----获取用户提交的请求方法(get/post)
    
    request.POST  -------获取POST提交过来的全部数据(字典形式)
    
    基础必会3件套
        1. HttpResponse('OK')
        2. render(request,'login.html')
        3.redirect('URL')

    配置数据库(Mysql为例)

    如果你不是使用默认的SQLite数据库,那么一些诸如USER,PASSWORD和HOST的参数必须手动指定!下面给出一个基于pymysql操作Mysql数据库的例子
    
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'mysite',
            'HOST': '192.168.1.1',
            'USER': 'root',
            'PASSWORD': 'pwd',
            'PORT': '3306',
        }
    }
    
    另外在当前根mysite的__init__里面添加一下内容,用来告诉Django该用那个数据库来链接
    import pymysql         
    pymysql.install_as_MySQLdb()

    setting环境设置

    在修改settings文件时,请顺便将TIME_ZONE设置为国内所在的时区Asia/Shanghai。
    要将应用添加到项目中,需要在INSTALLED_APPS设置中增加指向该应用的配置文件的链接,
    官方推荐格式:xxx.apps.PollsConfig
    也可以简写成:xxx
    默认情况,INSTALLED_APPS中会自动包含下列条目,它们都是Django自动生成的: django.contrib.admin:admin管理后台站点 django.contrib.auth:身份认证系统 django.contrib.contenttypes:内容类型框架 django.contrib.sessions:会话框架 django.contrib.messages:消息框架 django.contrib.staticfiles:静态文件管理框架

    创建数据库

    Django中通过用ORM来将数据库和python对象联系起来,将程序员与Mysql解耦,所以我们只需要按照ORM的规则创建特定的类就可以直接生成数据库中的表
    
    注意:
    在使用非SQLite的数据库时,请务必预先在数据库管理系统的提示符交互模式下创建数据库,你可以使用命令:“CREATE DATABASE database_name;”。Django不会自动帮你做这一步工作。
    
    创建内之后将python代码和数据库联系起来还需要一下操作:
    运行python manage.py makemigrations为改动创建迁移记录;
    运行python manage.py migrate,将操作同步到数据库。


    • 实际的输出内容将取决于您使用的数据库会有所不同。
    • 表名是自动生成的,通过组合应用名 (polls) 和小写的模型名questionchoice 。 ( 你可以重写此行为。)
    • 主键 (IDs) 是自动添加的。( 你也可以重写此行为。)
    • 按照惯例,Django 会在外键字段名上附加 "_id" 。 (你仍然可以重写此行为。)
    • 生成SQL语句时针对你所使用的数据库,会为你自动处理特定于数据库的字段,例如 auto_increment (MySQL), serial (PostgreSQL), 或integer primary key (SQLite) 。 在引用字段名时也是如此 – 比如使用双引号或单引号。
    • 这些SQL命令并没有在你的数据库中实际运行,它只是在屏幕上显示出来,以便让你了解Django真正执行的是什么。

    可以运行python manage.py check命令,它将检查项目中的错误,并不实际进行迁移或者链接数据库的操作

     URL

    url()方法可以接收4个参数,其中2个是必须的:regex和view,以及2个可选的参数:kwargs和name
    
    regex不会去匹配GET或POST参数或域名,例如对于https://www.example.com/myapp/,regex只尝试匹配myapp/。对于https://www.example.com/myapp/?page=3,regex也只尝试匹配myapp/
    
    view:当正则表达式匹配到某个条目时,自动将封装的HttpRequest对象作为第一个参数,正则表达式“捕获”到的值作为第二个参数,传递给该条目指定的视图view。如果是简单捕获,那么捕获值将作为一个位置参数进行传递,如果是命名捕获,那么将作为关键字参数进行传递
    
    kwargs:任意数量的关键字参数可以作为一个字典传递给目标视图
    
    name:对你的URL进行命名,让你能够在Django的任意处,尤其是模板内显式地引用它。这是一个非常强大的功能,相当于给URL取了个全局变量名,不会将url匹配地址写死
  • 相关阅读:
    LRESULT CALLBACK WndProc 窗口程序的 重点
    vs2012打开低版本项目时 出现vs2012警告未能加载包“visual c++ package 解决办法
    const char*, char const*, char*const的区别
    js手机短信按钮倒计时
    控件案例
    laydate.js时间选择
    jquery.reveal弹出框
    表格内容控制(换行、不换行、隐藏)
    sql 把特定数据排在最前面
    jquery选择器(可见对象,不可见对象) +判断,对象(逆序)
  • 原文地址:https://www.cnblogs.com/dingyutao/p/9174513.html
Copyright © 2020-2023  润新知