Lapis的layout模板

作者:糖果

在Lapis框架的源码当中的views文件夹有一个layout.lua文件。

html = require "lapis.html"
class Default extends html.Widget
  content: =>
    html_5 ->
      head -> title @title or "Lapis Page"
      body -> @content_for "inner"

moonscript的代码很简单。提起这个事是因为, 如果不注意这段代码, 在用lapis的render渲染模板时,这个模板生成的”Lapis Page”的Hmtl title标签会覆盖你的etlua中的title标签。 {render = “index”}

这段程序会自动生成下面下的代码

<!DOCTYPE HTML><html lang="en"><head><title>Lapis Page</title></head><body>

下面是moonscript翻译后的lua代码

    content = function(self)
      return html_5(function()
        head(function()
          return title(self.title or "Lapis Page")
          --return "" 
        end)
        return body(function()
          return self:content_for("inner")
        end)
      end)
    end

需要在你的APP里设置self.title=”XXXXXXXX”

app:get("/",
function(self)
    self.title="smartisan.black"
    return { render = "index" }
end
)

这样title会被设置成samrtisan.black,但是上面自动生成代码其实还是多余的,最暴力的方法是把layout.lua代码改了。

        head(function()
          --return title(self.title or "Lapis Page")
          eturn "" 
        end)

直接return ““空回去, 这样etlua中的title暂时不会被覆盖了。

糖果

糖果

糖果
LUA教程

如果不小心安装错 SQL Server 为 Evaluation 的版本,要小心当超过 180 天之后,系统就会无法正常使用了 这几天遇到一个蛮特别的案例,原本收到的问题是 “维护计划” 忽然无法使用,即便是里面没有任何的Task,都无法顺利地执行。但从对方所提供的错误消...… Continue reading

PLUM NIZ静电容键盘怎么样?

Published on September 25, 2020

程序员如何选择合适的机械键盘

Published on September 18, 2020