lua/luci入门

lua

注释 -- 单行注释 --[[ ]]-- 多行注释
数据类型可以用type函数判断 nil(未使用过的变量,既是值,也是类型) boolean string number(相当于c里的double) table(唯一的数据结构,基本与php数组类型同,索引数组从1开始) function userdara thread 
lua的真假判断 lua将0和空字符串也视为真,实际上,除了nil和false,其余皆为真
字符串连接用 .. 
比较运算不等 ~=
v1 and v2  若v1为真则取v2,若v1为假则取v1
v1 or v2  若v1为真则取v1,v1为假取v2
(v1 and v2) or v3  相当于 v1 ? v2 : v3
迭代 for i=10,1,-1 do print(i) end  pairs ipairs(数组) 
os.execute 执行命令行 os.date os.time时间函数

luci

controller
module("luci.controller.控制器名", package.seeall)
function index()
        entry(路径, 调用目标, _("显示名称"), 显示顺序)
        end
第二项为调用目标,调用目标分三种,分别是执行指定方法(Action)、访问指定页面(Views)以及调用CBI Module。
uci
UCI的方式,我们首先需要创建对应的配置文件(如果配置文件不存在的话,访问配置页面将会报错),格式即为linux配置文件的格式,文件需要存储在/etc/config/配置文件文件名”,内容如下:
config login
    option username ''
    option password ''
    option ifname 'eth0'
    option domain ''
m = Map("配置文件文件名", "配置页面标题", "配置页面说明")
同时我们设定不允许增加或删除Section(“.addremove = false”),以及不显示Section的名称(“.anonymous = true”)。
s = m:section(TypedSection, "login", "")
s.addremove = false
s.anonymous = true
Section中不同内容的交互(创建Option),常见的比如有Value(文本框)、ListValue(下拉框)、Flag(选择框)等等,
详细的可以参考官方的文档: http://luci.subsignal.org/trac/wiki/Documentation/CBI
添加depends事件--当Atrigger 选中B的C时
-- A:depends (B,C) 似乎只有listValue可用
xxx.default = 300 --默认值
xxx.datatype    = "uinteger" --默认数据类型
xxx.password = true --密码输入框
xxx.optional = false --optional 设置是否写入config文件  
xxx.rmempty=true --可以为空 false 不可为空
xxx.placeholder = 16 --placeholder属性
xxx.value = 300 --value即为300
button的属性
hup.inputstyle = "reload" --在按钮中使用图标 循环
term.inputstyle = "remove" --文件叉
kill.inputstyle = "reset" --红叉
l.inputstyle = "apply" --类似播放键
l.inputstyle = "link" --类似返回
判断是否点击
local apply = luci.http.formvalue("cbi.apply")
if apply then
    --[[
        需要处理的代码
    ]]--

end


资料源自本人及同事及(包括但不限于)以下网络资源:

openwrt中luci学习笔记 http://blog.chinaunix.net/uid-23780428-id-4367351.html
【OpenWRT之旅】如何自定义一个配置文件的设置界面 4367351.htmlhttp://www.cnblogs.com/gnuhpc/archive/2013/08/31/3293204.html
luci学习指南
http://wenku.baidu.com/view/156e3e7b1711cc7931b7167f.html
openwrt开源系统LUCI配置界面
http://www.right.com.cn/forum/thread-131035-1-1.html
【OpenWRT之旅】如何自定义一个配置文件的设置界面
http://www.cnblogs.com/gnuhpc/p/3293204.html
开发OpenWrt路由器上LuCI的模块 - 大魔王mAysWINd
http://www.tuicool.com/articles/zaUNfy
http://www.codingnow.com/2000/download/lua_manual.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值