作者:糖果
http://www.lua.ren

Lapis框架默认是没有配置文件,lapis new 创建出来的工程没有对监听的端口和数据库的相关设置,需要在工程目录下创建一个config.moon或是moon.lua配置文件,进行相关的设定。

首先,看一下如何通过Moonscript设置工程Openresty监听的端口号和数据库配置信息。

config = require("lapis.config")
config "development", ->
  port 8080
  mysql ->
    host "127.0.0.1"
    user "moonscript"
    password "moonscript"
    database "moonscript"

我们来看一下config.moon,被翻译成Lua之后的形态。

local config = require("lapis.config")
return config("development", function()
  port(8080)
  return mysql(function()
    host("127.0.0.1")
    user("moonscript")
    password("moonscript")
    return database("moonscript")
  end)
end)

这需要需要的特别注意的就是 ,需要特别注意的是, 无论是Moonscript,还是Lua都需要
引用lapis .config

config = require("lapis.config")

以上的配置是Moonscript和自动翻译成的Lua,我们看看直接用Lua写,config.lua是什么样的。

local config = require("lapis.config")

config("development", {
port = 8080,
mysql = {
host = "127.0.0.1",
user = "moonscript",
password = "moonscript",
database = "moonscript"
}
})

其实,还是纯Lua的写法,最简洁明。
Lapis默认的骨架工程使用的不是Mysql数据库,我们在配置文件种指定了Mysql为工程的数据库,这块的实现,可以直接看Lapis的DB相关的源码。

原文来至糖果实验室