LuCI使用controller目录下的lua脚本中的index函数来构造了一个dispatch树。cgi环境变量PATH_INFO会被用在dispatch树种,例如
cgi-bin/luci/foo/bar/baz 会被解析为 foo.bar.baz(在index函数中应该写为
function index ()
entry({"foo", "bar", "baz"}, alias("XXX"),_("Baz"), 80).index = true
...
end
)
entry的使用说明如下:
entry(path, target, title=nil, order=nil)
path: 路径,描述了在dispatch 树种的位置
target:目标,描述了当此node接收到请求后,应该做出的响应。比较常用的有三种(call, cbi, template)。
title: 标题,在菜单中显示的名称(可选择)
order:顺序字, 一个数字,当菜单下有多个title时,显示的顺序,按照数字从小到大显示。
CBI模块
class Map(config, title, description)
config: 配置文件,对应于/etc/config位置下的文件,例如 network,那么对应的就是/etc/config/network
title:标题, UI(界面)上显示的名称
description:描述, UI(界面)上显示的描述