Openwrt Luci界面开发

Openwrt已经提供了一个很强大的web管理界面Luci,可以方便的管理路由器。我们在开发智能路由器时,一般就需要在OpenWrt的WEB界面增加内容。

1.Luci简介

LuCI是OpenWrt上的Web管理界面,LuCI采用了MVC三层架构,使用Lua脚本开发,所以开发LuCI的配置界面不需要编辑任何的Html代码,除非想自己单独去创建网页(View层),否则我们基本上只需要修改Model层就可以了。

2. 添加选项Test

接下来介绍如何在“System”添加Test选项卡。

在文件系统目录“/usr/lib/lua/luci/controller/admin”下创建test.lua文件,文件内容如下:

module("luci.controller.admin.test", package.seeall)

function index()
    entry({"admin", "test"}, alias("admin", "test", "test"), _("Test1"), 30).index = true
    entry({"admin", "test", "control"}, cbi("admin_test/control"), _("ControlTest"), 1)
end

/etc/init.d/uhttpd restart 重启http服务之后,刷新界面之后( 有时候因为缓存,界面没有及时变化,rm -rf /tmp/luci-* 删除缓存就
  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
OpenWrtLuci 界面开发中,NamedSection 是常用的组件之一。它可以方便地显示一些配置项,并且提供了一些常用的操作,比如添加、删除、修改等。 下面是一个简单的 NamedSection 示例: ```lua m = Map("example") s = m:section(NamedSection, "example", "example", "Example Section") o = s:option(Value, "value", "Example Option") return m ``` 这段代码创建了一个名为 "example" 的配置项,并在 Luci 界面中显示为 "Example Section"。在这个配置项中,我们可以添加一个名为 "value" 的选项。 其中,第一个参数 "example" 是配置项的唯一标识符,必须与配置文件中的标识符一致。第二个参数 "example" 是配置项的标题,用于在界面中显示。第三个参数 "Example Section" 是 NamedSection 的标题,用于在界面中显示。第四个参数是一个可选参数,用于指定 NamedSection 的 ID,如果不指定,则使用配置项的标识符。 在这个例子中,我们使用了一个 Value 组件作为选项。除此之外,还有其他常用的组件,比如 ListValue、Flag、Button 等。 ```lua m = Map("example") s = m:section(NamedSection, "example", "example", "Example Section") o = s:option(ListValue, "list", "Example List") o:value("option1", "Option 1") o:value("option2", "Option 2") o:value("option3", "Option 3") o = s:option(Flag, "flag", "Example Flag") b = s:option(Button, "button", "Example Button") b.inputtitle = "Click me!" b.write = function() luci.http.redirect(luci.dispatcher.build_url("admin/example/example")) end return m ``` 这段代码中,我们添加了一个 ListValue 组件、一个 Flag 组件和一个 Button 组件。ListValue 组件用于显示一个下拉框,Flag 组件用于显示一个勾选框,Button 组件用于显示一个按钮。 在 Button 组件中,我们设置了 inputtitle 属性,用于指定按钮上显示的文字。write 方法用于处理按钮的点击事件,这里我们简单地重定向到当前页面。 通过多次使用 NamedSection 和不同的组件,我们可以轻松地创建一个复杂的配置界面

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值