Почему мне нужно использовать init() и cursor() в программе luci

В моих файлах cbi у меня есть:

local t=require"luci.model.network".init()
local e=require"luci.model.firewall".init()
local i=require"luci.util"
local e=require"luci.model.uci".cursor()

В приведенном выше синтаксисе, если я удаляю init() и cursor(), тогда моя программа не работает должным образом, нужна помощь, почему это необходимо

Откуда я могу узнать о init(),cursor() в luci и зачем они нужны?

1 ответ

Lua не является объектно-ориентированным языком, который поддерживает конструкторы / деструкторы. Но можно достичь некоторой аналогичной функциональности, определив init / new / с любым именем, которое вам нравится, чтобы создать объект и затем работать с этим экземпляром. Я бы посоветовал вам прочитать учебники на lua-wiki о создании модулей и исходный код LuCI, чтобы узнать о том, что init или же cursor функции делают.

Другие вопросы по тегам