openWRT的luci web管理器添加新菜单案例--leidiclient
root@OpenWrt:/# cat /usr/lib/lua/luci/controller/leidiclient.lua module("luci.controller.leidiclient", package.seeall) function index() entry({"admin", "network", "leidiclient"}, cbi("leidiclient"), _("LEIDI Client"), 100) end
root@OpenWrt:/# cat /etc/config/leidiclient config login option username '' option password '' option ifname '' option domain ''
root@OpenWrt:/# cat /usr/lib/lua/luci/model/cbi/leidiclient.lua require("luci.sys") m = Map("leidiclient", translate("LEIDI Client"), translate("Configure leidi client.")) s = m:section(TypedSection, "login", "") //login显示设定值项目 s.addremove = false //设定不允许增加或删除 s.anonymous = true //不显示Section的名称 enable = s:option(Flag, "enable", translate("Enable")) //使能项 name = s:option(Value, "username", translate("Username")) pass = s:option(Value, "password", translate("Password")) pass.password = true //密码隐藏与否 domain = s:option(Value, "domain", translate("Domain")) //单纯输入值 ifname = s:option(ListValue, "ifname", translate("Interfaces")) //引用内部包含库选值 for k, v in ipairs(luci.sys.net.devices()) do if v ~= "lo" then ifname:value(v) end end number= s:option(ListValue, "number", translate("Number")) //自定义选值 number:value("100421104") number:value("100421105") number:value("100421106") button=s:option(Button,"_button","Button") //按键 local apply = luci.http.formvalue("cbi.apply") if apply then io.popen("/etc/init.d/leidiclient restart") end return m


-------------------------------------------------
测试:
root@OpenWrt:/# cat /etc/config/leidiclient //
config login
option enable '1'
option username 'gemeng'
option password '123456'
option domain 'leidi'
option ifname 'br-lan'
root@OpenWrt:/# cat /etc/config/leidiclient //
config login
option enable '1'
option username 'gemeng'
option password '123456'
option domain 'leidi'
option ifname 'br-lan'
option number '100421106'
root@OpenWrt:/# cat /etc/config/leidiclient //
config login
option username 'gemeng'
option password '123456'
option domain 'leidi'
option ifname 'br-lan'
option number '100421106'
option enable '1'
option class '100424'
------------------------------------------
浙公网安备 33010602011771号