SuperAPI AI 工具集

frappe-syntax-hooks

编程与开发

查看项目

更新于 10-16 04:28

技能介绍

该技能面向 Frappe/ERPNext 自定义应用的 hooks.py 配置,聚焦非 doc_events 类钩子(文档事件另有独立技能 frappe-syntax-hooks-events)。主要覆盖:应用元数据(app_name、required_apps 等)、前端资源注入(app_include_js/css、web_include_js/css、doctype_js、doctype_list_js)、安装与迁移生命周期(before_install、after_install、after_migrate 等)、计划任务(all、hourly、daily、cron 及 *_long)、会话与认证(on_login、on_logout、auth_hooks)、请求中间件(before_request、after_request、before_job、after_job)、权限(permission_query_conditions、has_permission)、DocType 类覆盖(override_doctype_class,v16+ 的 extend_doctype_class)、网站路由(website_route_rules、homepage、portal_menu_items)、文件处理、邮件、PDF、Jinja 方法/过滤器、bootinfo 及 fixtures、全局搜索、方法覆盖等。用法上以点分路径字符串配置,任务函数不接收参数;修改后需执行 bench --site sitename migrate。限制与要点:hooks.py 中不可在模块级导入 frappe;不可使用 lambda;权限钩子需用 frappe.db.escape 防注入且仅对 get_list 生效;bootinfo 不可放密钥或重查询;fixtures 必须加过滤,不可包含交易数据;覆盖方法须调用 super();扩展类需 v16+ 才可用。