首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Ruby HAML和Django?

Ruby HAML和Django?
EN

Stack Overflow用户
提问于 2010-06-20 21:24:12
回答 4查看 3.8K关注 0票数 19

好了,我真的很喜欢HAML。特别是,我喜欢与RedCloth和BlueCloth的集成,所以我可以将Markdown和Textile与我的HAML混合使用。

我也喜欢Python和Django。

所以,我想在Django中使用HAML。现在,我已经了解到有人尝试在Python (SHPAML和其他语言)中克隆类似于HAML的语法。我已经尝试过了,虽然它们还不错,但我发现我真的只是想要真正的HAML。部分是因为它的语法,还有像RedCloth和BlueCloth这样的东西。

所以,我的问题是,如何让HAML和Django协同工作?

我认为,一种解决方案是创建HAML模板,然后在每次更新时使用命令行工具将其编译为HTML。

问题1:我在这里会遇到什么问题吗?

我也想知道是否有一种方法可以让Python和Ruby更多地合作。实际上,我的一个想法是创建Ruby进程。这可能是个坏主意,但有人对此有什么想法吗?

问题2:如何使用Python调用真正的Ruby HAML?

最后,如果有人知道一个完整的HAML的Python实现,并且支持Textile或Markdown,以及纯文本passthru,那么请让我知道。

问题3:有没有完整的从HAML到Python的翻译,包括Markdown或Textile支持?

谢谢!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-06-28 07:06:56

HAML第1个问题:静态文件应该可以很好地工作(除非您打算使用HAML求值特性来动态地显示内容)。我在php网站上使用了类似的SASS样式表。在开始黑客攻击之前,只需确保在目录监视模式下启动HAML ;)

问题2:虽然派生ruby进程来创建HTML代码是可能的,但我不建议您这样做,因为初始化ruby解释器并加载所需的文件需要大量的cpu时间,所以您最好坚持使用静态文件。如果你需要ruby评估功能来将运行时创建的数据包含到文档中,你最好看看eventmachine,并使它成为一个服务器(这样你的Django应用程序就可以连接到它,并请求HTML生成,而不需要每次都派生一个新的解释器)。

问题3:也许这是最难的。还有GHRML,它被废弃了;SHPAML只实现了HAML的一个很小的子集,DMSL,它目前还处于实验阶段,但已经支持大多数HAML,也支持调用python代码,但缺乏Markdown或Textile支持。但是显然还没有可以替代Ruby HAML来支持所有必需的特性。

票数 8
EN

Stack Overflow用户

发布于 2010-08-17 23:40:04

票数 2
EN

Stack Overflow用户

发布于 2011-08-22 19:57:57

我强烈建议您不要从django视图中派生任何进程,因为这样的开销很大。

您应该有一个持久的ruby进程来为您的模板服务,并从您的django代码中调用它。我将IPC技术留给您,但显而易见的选择要么是某种消息队列技术,要么是通过套接字与ruby进程进行HTTP通信。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3079368

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档