zoukankan      html  css  js  c++  java
  • BBS第二天

    操作内存的流-StringIO | BytesIO

    from io import StringIO,BytesIO

    创建操作字符串的内存流

    sf = StringIO()

    往内存中写

    sf.write('hello')

    在内存中取

    sf.getvalue()

    创建操作二进制的内存流

    bf = BytesIO()

    往内存中写

    bf.write('hello'.encode('utf-8))

    在内存中取

    bf.getvalue()

    PIL:python图片操作库

    python

    1.生成图片

    from PIL import Image

    生成一个Image类对象(准图片):模式,尺寸,颜色

    img = Image.new('RGB',(80,80),color=(255,0,0))

    将Image类对象采用具体格式放入具体的文件流中

    bf = BytesIO()

    img.save(bf,'png')

    2.产生文字颜色

    from PIL import ImageFont

    产生某种ttf格式的30px大小文字

    img_font = ImageFont.truetype('*.ttf',30)

    3.画图

    from PIL import ImageDraw()

    在具体的Image对象上画图

    img_draw = ImageDraw.Draw(img)

    画文字:xy轴,文本,颜色,ImageFont字体

    img_draw.text((x,y),'abc','red',img_font)

    前端解析二进制流图片

    向指定url请求图片二进制流转换为blob:格式的src

    var xhr = new XMLHttpRequest():

    xhr.open('GET',url,true);

    xhr.responseType = 'blob'

    xhr.onreadystatechange = function(){

      if (xhr.readyState == 4){

        if (xhr.status == 200){

          var blod = this.response;

          var src = URL.createObjectURL(blob);

          }

        }

    };

    xhr.send()

    Admin自动化数据管理界面

    admin的概念

    Admin是Django自带的一个功能强大的自动化数据管理界面

    被授权的用户可以直接在Admin中操作数据库

    Django提供了许多针对Admin的定制功能

    配置并访问自动化数据管理界面

    终端项目目录创建一个超级用户:

    python3 manage.py createsuperuser

    设置Admin界面为中文环境:项目下settings.py,LANGUAGE_CODE = 'zh-Hans'

    简体:zh-hans'  | 繁体:zh-hant  | 美式英语:en-us

    将指定映射添加到自动化数据管理界面

    应用下的admin.py中,注册映射对应关系的类

    from . import models

    admin.site.register(models.Article)

    格式化界面字段显示名与表名

    python

    为应用下models.py映射关系类重写__str__方法

    class Article(models.Model):

      title = models.CharField(max_length=32),

      default=Title",verbose_name="标题'')

      content = models.TextField(null=True,verbose_name="内容',blank = True)

    重写__str__方法:格式化该类实例对象的表示方式

      def __str__(self):

        return self.title

      class Meta:

        verbose_name = "文章"

        verbose_name_plural = verbose_name

  • 相关阅读:
    Lua中..和#运算符的用法
    C语言之linux内核实现平方根计算算法
    Xcode中git的用法介绍与"Please tell me who you are"问题的解决方式
    公钥加密算法究竟什么鬼
    Mesos, Marathon, Docker 平台部署记录
    查找olr备份路径
    OpenCV矩阵运算
    改动Centosserver主机名称
    HDU 1114
    C++虚函数表剖析
  • 原文地址:https://www.cnblogs.com/suncunxu/p/10537375.html
Copyright © 2011-2022 走看看