zoukankan      html  css  js  c++  java
  • python开发学习-day15(前端部分知识、web框架、Django创建项目)

    s12-20160430-day15

    pytho自动化开发 day15

    Date:2016.04.30

        @南非波波
    

    课程大纲:

    http://www.cnblogs.com/wupeiqi/articles/4491246.html http://www.cnblogs.com/wupeiqi/articles/4508271.html

    一、前端设计

    1.实现图片轮播

    js下载地址:
        http://bxslider.com/
    引入
        <!-- jQuery library (served from Google) -->
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
        <!-- bxSlider Javascript file -->
        <script src="/js/jquery.bxslider.min.js"></script>
        <!-- bxSlider CSS file -->
        <link href="/lib/jquery.bxslider.css" rel="stylesheet" />
    加载图片:
        <ul class="bxslider">
          <li><img src="/images/pic1.jpg" /></li>
          <li><img src="/images/pic2.jpg" /></li>
          <li><img src="/images/pic3.jpg" /></li>
          <li><img src="/images/pic4.jpg" /></li>
        </ul>
    
    调用: 
        $(document).ready(function(){
          $('.bxslider').bxSlider();
        });
    

    2.图标资源

    Font Awesome
        http://fontawesome.io/
        a、图片,自己找图片,挖洞
        b、现成的图标
            css
            使用样式
            --以前版本
                css
                图片库
                使用样式
            -- 现在
                css
                字体文件
                使用样式
        c、css
            字体文件
            样式
        =====》 大图片
    

    3.伪类

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>响应式</title>
        <style>
            @media (min- 768px) {
                .lead {
                    background-color: red;
                }
            }
            .c1 {
                background-color: green;
                }
            .clearfix:after {
                content: ".";
                clear: both;
                visibility: hidden;
            }
        </style>
    </head>
    <body>
    
        <dev class="lead">
            我们都是中国人
        </dev>
    
        <div class="c1 clearfix">
            <div style="float: right;">
                你好
            </div>
             <div style="float: right;">
                 china
            </div>
             <!--<div style="clear: both"></div>-->
        </div>
    
    
    </body>
    </html>
    

    二、web框架

    1.python web框架分类

    #!/usr/bin/env python
    #coding:utf-8
    
    import socket
    
    def handle_request(client):
        buf = client.recv(1024)
        client.send("HTTP/1.1 200 OK
    
    ")
        client.send("Hello, Seven")
    
    def main():
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        sock.bind(('localhost',8000))
        sock.listen(5)
    
        while True:
            connection, address = sock.accept()
            handle_request(connection)
            connection.close()
    
    if __name__ == '__main__':
        main()
    

    2.MVC web框架

    MVC:Models  Views Controllers
    
            数据库操作 模板  处理请求的函数
    代码块的归类结构
    
    MTV:Models Templates Views
    
        数据库操作 模板  处理请求的函数
    

    3.Django基础

    Django框架属于MTV框架。程序需要的操作的:
        1.models
        2.Templates
        3.Views
        4.urls
    

    三、Django

    1.安装

    pip install django 1.9.5
    

    2.创建Django程序框架

    使用命令创建
        django-admin startproject demo 创建projects
        cd demo
        python manage.py startapp app0 创建应用
    使用pycharm进行创建项目和应用
    

    3.执行程序

    进入项目, python manage.py runserver 127.0.0.1:8000
    

    4.创建数据表

    python manage.py makemigrations #生成配置文件
    python manage.py migrate       #根据配置文件创建数据库相关 表
    

    5.django默认后台管理

    创建超级用户名 python manage.py createsuperuser
    

    6.路由系统

    静态路由
    动态路由
        安照顺序,第n个匹配的数据交给函数的第n个参数,严格按照顺序
            url(r'^page/(d+)/(d+)',views.page)
        模板的方法,将匹配的参数,传给指定的形式参数
            url(r'^page/(?P<n1>d+)/(?P<n2>d+)',views.page)
    二级路由
        app01
            urls.py
        project name 
            URL:app01 ->include("app01.urls")
    

    7.基本数据库操作

    ORM框架
        code first
            自己写类 -->数据库表
        db first
            自己写命令操作数据库-->更新类
        使用类进行数据操作
    
    创建类
        from django.db import models
        class UserInfo(models.Model):
            username = models.CharField(max_length=32)
            password = models.CharField(max_length=32)
            age = models.IntegerField()
    
    配置
        setting
            INSTALLED_APPS = [
                'django.contrib.admin',
                'django.contrib.auth',
                'django.contrib.contenttypes',
                'django.contrib.sessions',
                'django.contrib.messages',
                'django.contrib.staticfiles',
                'app01',
            ]
    使用命令根据类创建表
        python manage.py makemigrations #生成配置文件
        python manage.py migrate       #根据配置文件创建数据库相关 表
    默认表名:
        appname_classname
    
    d. 
        views中导入models
    
    e.
        POST提交数据
            settings里操作:
                MIDDLEWARE_CLASSES = [
                    'django.middleware.security.SecurityMiddleware',
                    'django.contrib.sessions.middleware.SessionMiddleware',
                    'django.middleware.common.CommonMiddleware',
                   # 'django.middleware.csrf.CsrfViewMiddleware',
                    'django.contrib.auth.middleware.AuthenticationMiddleware',
                    'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
                    'django.contrib.messages.middleware.MessageMiddleware',
                    'django.middleware.clickjacking.XFrameOptionsMiddleware',
                ]
    
  • 相关阅读:
    如何设计一个安全的对外接口?
    Java架构师必须知道的 6 大设计原则
    Spring Boot 如何快速改造老项目?
    Java 类中可以覆盖静态方法吗?
    Dubbo 的心跳设计,值得学习!
    在滴滴和头条干了 2 年后端开发,太真实…
    别乱提交代码了,看下大厂 Git 提交规范是怎么做的!
    3种骚操作,教你查看 Java 字节码!
    sysbench测试服务器性能
    mysql DDL时出现的锁等待状态
  • 原文地址:https://www.cnblogs.com/songqingbo/p/5592562.html
Copyright © 2011-2022 走看看