• Django Admin 图片路径设置显示为图片(imageField显示方法设置)


    一  使用环境

      开发系统: windows

      IDE: pycharm  

      数据库: msyql,navicat

      编程语言: python3.7  (Windows x86-64 executable installer)

      虚拟环境: virtualenvwrapper

      开发框架: Django 2.2

    二  Django Admin 图片路径设置显示为图片(imageField显示方法设置)

    1.在 sttings.py 中设置

    # 设置上传图片存储路径,所有上传图片自动存储的到media文件下
    MEDIA_ROOT = os.path.join(BASE_DIR, "media")  # 多媒体文件存放处
    MEDIA_URL = "/media/"  # 这个会自动加在FileField的upload_to的前面

     2.在 urls.py 中设置

    from django.contrib import admin
    from django.urls import path, re_path
    from django.views.static import serve
    from A02CABJ import settings  # 自已项目中的settings
    urlpatterns = [
        re_path(r'^media/(?P<path>.+)$', serve, {'document_root': settings.MEDIA_ROOT}),  # 图片路径设置
        path('admin/', admin.site.urls),
    ]

    3. 在 admin.py 中设置方法

    from django.utils.html import format_html  # models.py
    from django.utils.safestring import mark_safe # imageField
    @admin.register(Company)  # 自已注册的admin
    class CompanyAdmin(admin.ModelAdmin):
      # 方法一
        def logo(self, obj):  # imageField显示方法设置,图片路径设为显示图片
            return mark_safe('<img src="%s" height="20" />' % obj.公司logo.url)
    
        # 方法二
        def logo1(self, obj):
            # 返回方法1
            # return format_html('<img src="{}" height="20" />', format(obj.公司logo.url))
            # 返回方法2
            return format_html('<img src="%s" height="20" />' % obj.公司logo.url)
    
        # 显示页面显示字段设置,只有改变标记标记方法时,加入的字段才不加引号
        list_display = ('logo',  'logo1',)

     

  • 相关阅读:
    Postman自动化传参实操
    sql语句大全(详细)
    selenium自动化测试-处理iframe
    selenium切换窗口
    selenium中三大窗口切换
    第一个Appium脚本
    Capability配置简介
    APP专项
    Appium环境搭建
    转载——Python Selenium 常用方法总结
  • 原文地址:https://www.cnblogs.com/djtang/p/13511216.html
Copyright © 2020-2023  润新知