Lift Framework BindHelpers.attr 问题(或更好的实践?)
我的问题是提取 xhtml 属性来生成绝对链接, 因为它们在测试和生产上需要有所不同 环境。 我想使用绑定所有“src”和“href”的“全局片段” 属性为“localhost:8080”或“www.mydomain.com”,具体取决于 配置值。
这就是模板的样子:
<lift:Global>
<html><body><a G:href="/somelink">some text</a></body></html>
</lift:Global>
这是 Global.render 方法:
bind("G",template,
AttrBindParam("href",Conf.localhost
+BindHelpers.attr("G","href").map(_.toString).getOrElse("none") ,"href")
)
但在渲染的页面中我看到的是... href="confValueNone"。
我做错了什么? 有没有更好的方法来针对不同的环境进行配置?
My problem is extracting xhtml attributes to generate absolute links,
since they need to be different on testing and production
environment.
I would like to use a "global snippet" that binds all "src" and "href"
attributes to "localhost:8080" or "www.mydomain.com" depending on a
conf value.
This is how the template looks like:
<lift:Global>
<html><body><a G:href="/somelink">some text</a></body></html>
</lift:Global>
And this is the Global.render method:
bind("G",template,
AttrBindParam("href",Conf.localhost
+BindHelpers.attr("G","href").map(_.toString).getOrElse("none") ,"href")
)
But in the rendered page all I see is ... href="confValueNone".
What am I doing wrong?
Is there a better way to configure for different environments?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我现在使用 AttributeSnippets。它们在模板方面有点重,但会产生更清晰的片段。
片段:
模板:
I use AttributeSnippets now. They are a bit heavier on the template side, but result in cleaner snippets.
snippet:
template: