Oejia 技术栈
首页
应用市场
方案
OE学院
分享
关于
编辑器
登录
DjangoX 首页面板的使用
admin
on 2017-08-10
### 概述 DjangoX系统默认会产生一个面板页,也就是首页,可以通过`site.show_default_index = False`关闭面板首页的产生 ### 使用方法 首页面板对应的管理类为 `views.website.IndexView` 可以通过下面的方式来做页面内容的定制 #### 通过设置 widget 来产生 Dashboard 页面内容块 ``` # 站点首页设置 class MainDashboard(object): title = '我的面板' widgets = [ [ {"type": "html", "title": "Test Widget", "content": "<h3> Welcome to DjangoX! </h3><p>Join us: <br/>Github : https://github.com/JoneXiong/DjangoX</p>"}, {"type": "chart", "model": "app.accessrecord", 'chart': 'user_count', 'params': {'_p_date__gte': '2013-01-08', 'p': 1, '_p_date__lt': '2013-01-29'}}, {"type": "list", "model": "app.host", 'params': {'o':'-guarantee_date'}}, ], [ {"type": "qbutton", "title": "Quick Start", "btns": [{'model': models.Host}, {'model': models.IDC}, {'title': "DjangoX", 'url': "https://github.com/JoneXiong/DjangoX"}]}, {"type": "addform", "model": models.MaintainLog}, ] ] site.register(views.website.IndexView, MainDashboard) ``` #### 通过自定义模板来完全自主写首页面板内容 ``` class MainDashboard(object): template = 'ec/dashboard.html' widget_customiz = False title = '我的面板' site.register(IndexView, MainDashboard) ``` 其中 widget_customiz 用于控制是否允许用户自定义自己的内容块 #### 通过混合方式定制面板内容 ``` class MainDashboard(object): template = 'base/dashboard.html' widget_customiz = False def make_widgets(self): # 在这里动态构建用于显示的 widget 内容块 # ... @filter_hook def get_context(self): context = super(MainDashboard, self).get_context() # 在这里添加额外的前端模块需要的变量数据 # ... ``` 模板 ``` {% extends base_template %} {% load i18n xadmin_tags %} {% block extrastyle %} # 这里添加额外要引入的静态文件 <link href="{% static "base/css/dashboard.css" %}" rel="stylesheet"> {% endblock %} {% block bodyclass %}dashboard{% endblock %} {% block breadcrumbs %}{% endblock %} {% block content-nav %}{% endblock %} {% block content %} # 这里添加自主的html内容 # ... # 这里用于显示出后台构造的所有 widget 内容块 <div class="dashboard row"> {% for c in columns %} <div class="{{ c.0 }} column"> {% for widget in c.1 %} {{ widget.widget|safe }} {% endfor %} </div> {% endfor %} </div> <input type='hidden' id='_portal_key' value='{{ portal_key }}' /> {% endblock %} ```
Information
DjangoX 首页面板的使用
http://www.oejia.net/article/b448d8bea7b741dba80475bb405662d9
http://www.oejia.net/raw/b448d8bea7b741dba80475bb405662d9
admin
on 2017-08-10
Category
DjangoX
Related
2021-08-17 :
Odoo 微信支付模块使用说明
2014-12-1 :
开篇感言
2019-11-15 :
Odoo 小程序商城模板消息通知使用说明
2019-12-09 :
YouPBX 基本使用说明
2020-04-12 :
商城——小程序直播模块
2018-11-13 :
微信模块 Oejia_wx v0.5.5 发布,优化菜单配置及会话管理增加素材支持
2021-04-12 :
基于文件的带过期时间机制的key/value缓存实现
2023-01-12 :
Odoo16 SyntaxError
2021-02-18 :
Odoo 静态相关
2016-02-26 :
DjangoX 相关
官方订阅号
关注订阅实时了解我们更多分享
分类
(24)
Django (3)
DjangoX (13)
JS (2)
Nginx (1)
Odoo (129)
Python (1)
YouMd (3)
公告说明 (2)
前端 (2)
后端HTTP (7)
异常处理 (1)
桌面UI (1)
移动开发 (4)
About This Entry
DjangoX 列表页自定义计算列的使用
关于 Odoo 的模板引擎 Qweb
About This Blog
main index
to find recently
archives
to find all
标签
微信模块发布记录
微信模块
小程序商城
Web
Http
客服系统
OE商城
审批OA
HTML5
Markdown
DjangoX
Excel
markdown
解析
服系统
PyQT
YouPBX
md
示例
Python
oeshop
最近发布
处理 Error Failed to download metadata for repo ‘appstream‘ Cannot prepare internal mirrorlist
Odoo 16 关键变化 change the term "acquirer" to "provider"
企业微信错误码 81013 的排查与处理
Odoo商城模块 Oejia_weshop v1.1 发布,支持Odoo16及下单子账号特性
微信模块 Oejia_wx v0.6.7 发布,支持 Odoo16 及新的Websocket消息模式
Odoo16 开启客屏时如何实现在POS设备上自动打开到第二屏
Odoo生产环境需要注意或修改的一些关键配置项
Odoo 更灵活的对账、付款及客户余额的介绍
Odoo16 SyntaxError
Friend Links
Oejia技术梦博客分享
YouMd,爱上MarkDown
Mole轻量级wsgi架子