0

这是 LuCI(OpenWrt Web UI)项目中的代码块。

我不明白这个函数在做什么,也找不到调用它的地方。这个函数在哪里被调用,它在做什么?

p = s:option(ListValue, "proto", translate("Protocol"))
p.override_values = true

p:value("pppoe", "PPPoE") 
p:value("pptp",  "PPTP")  

function p.write(self, section, value)
    if value == "pptp" or value == "pppoe" then
        self.map:set(section, "peerdns", "1")
        self.map:set(section, "defaultroute", "1")
    end
    return ListValue.write(self, section, value)
end
4

2 回答 2

0

我不确定它在哪里被调用,但我假设来自网络配置 LuCI 网页。

它写入 UCI 网络配置文件(从逻辑上讲,物理写入需要提交)。

参考

于 2014-07-21T23:42:47.363 回答
0

该函数p.write(self, section, value)正在覆盖抽象父方法。LuCI是一个MVC,所以Listvalue会在页面自动应用时调用write函数。

于 2015-01-09T16:08:05.187 回答