zoukankan      html  css  js  c++  java
  • odoo14学习----x2many操作与图片设置继承image.mixin

    三种方式实现数据更新

    • 一,如上所述
    • 二,通过对数据集调用update({'key':value,'key1':value1..})更新数据集
    • 三,调用write函数,与update类似,传递字典。
      
    元组 影响
    (0, 0, dict_val) 将新创建的记录对象关联到主记录上
    (1, id, dict_val) 更新特定(ID)关联记录的值
    (2, id) 移除ID的记录,并从数据库删除ID的记录
    (3, id) 取消记录ID的关联,但并不从数据库删除记录
    (4, id) 添加关联新的已经存在的纪录
    (5, ) 移除所有的记录,类似于对每一个ID调用(3, id)
    (6, 0, id_list) 这将在正在更新的记录和现有记录之间创建一个关系,现有记录的id在名为id list的Python列表中。

    生成不同尺寸的图片

    大图片对任何网站来说都是麻烦的。它们增加了网页的大小,结果使网页变慢。这就导致了不好的SEO排名和访问者流失。本节,我们将探索如何创建不同大小的图像;通过使用正确的图像,您可以减少网页大小和改善页面加载时间。

    步骤

    您将需要继承image.mixin。如下:

    class LibraryBook(models.Model):
    	_name = 'library.book'
    	_description = 'Library Book'
    	_inherit = ['image.mixin']
    

    mixin模型将自动添加5个字段,用于存储不同大小的图片。

    步骤

    image.mixin实例将自动向模型添加5个新的二进制字段。每个字段存储具有不同分辨率的图像。以下是这些领域及其解决方案的列表:

    • image_1920: 1,920x1,920
    • image_1024: 1,024x1,024
    • image_512: 512x1,512
    • image_256: 256x256
    • image_128: 128x128
      在这里给出的所有字段中,只有image_1920是可编辑的。其他图像字段是只读的,当您更改image_1920字段时,它们会自动更新。因此,在模型的后端表单视图中,您需要使用image_1920字段来允许用户上传图像。但这样做,我们在表单视图中加载大image_1920图像。但是,有一种方法可以提高性能,即在form视图中使用image_1920图像,但是显示较小的图像。例如,我们可以使用image_1920字段,但显示image_128字段。要做到这一点,你可以使用以下语法:
     <field name="image_1920" widget="image" options="{'preview_image': 'image_128'}" />
    

    将图像保存到字段后,Odoo会自动调整图像的大小并将其存储到相应的字段中。form视图将显示转换后的image_128,因为我们使用它作为preview_image。

    小贴士
    image.mixin模型是AbstractModel,所以它的表不在数据库中。为了使用它,您需要在模型中继承它。

    image.mixin,您可以存储的图像的最大分辨率为1920 × 1920。如果您保存的图像分辨率高于1920 x1920, Odoo会将其降低为1920 x1920。在这样做的同时,Odoo还将保留图像的分辨率,避免任何失真。例如,如果您上传的图像分辨率为2,400x1,600,那么image_1920字段的分辨率将为1,920x1,280。

    更多

    image.mixin,你可以获得特定分辨率的图像,但是如果你想使用另一种分辨率的图像呢?为此,您可以使用二进制包装字段图像,如下面的示例所示:

    image_1500 = fields.Image("Image 1500", max_width=1500, max_ height=1500)
    

    这将创建一个新的image_1500字段,存储图像将把它的分辨率调整为1500 x1500。注意,这不是image.mixin的一部分。它只是将图像缩小为1,500x1,500,因此需要在form视图中添加该字段;编辑它不会改变image.mixin中的其他图像字段。如果您想将其与现有的图像链接。在字段定义中添加related="image_1920"属性。

    心有猛虎,细嗅蔷薇
  • 相关阅读:
    洛谷模板汇总
    BZOJ1787【AHOI2008】Meet紧急集合 <LCA>
    HDU3068 最长回文 <Manacher>
    UVa12345 Dynamic len(set(a[L:R])) <带修莫队>
    BZOJ2038 小Z的袜子 <莫队>
    BZOJ1103【POI2007】大都市meg <树上差分+树状数组>
    BZOJ3226【SDOI2008】校门外的区间
    BZOJ1012【JSOI2008】最大数 <线段树>
    20170918~24周总结
    BZOJ1934【SHOI2007】善意的投票 <网络流>
  • 原文地址:https://www.cnblogs.com/1314520xh/p/14545618.html
Copyright © 2011-2022 走看看