我正在使用 ruby on rails 构建一个多语言网站,其中部分内容应该是用户生成的,并且他们应该能够为所有语言创建不同版本的内容。语言支持由 i18n gem 处理。
他们的部分内容是通过http://daringfireball.net/projects/markdown/basics使用 Markdown 创建的。
在我的数据库中,我为不同的语言环境保存:object.content_markdown_en、object.content_html_en、object.content_markdown_sv、object.content_html_sv 等等。
现在,如果用户更改内容,则应该生成新的 html。但是,如果他只对其中一种语言进行更改,似乎没有必要为所有语言环境重新生成 html。
我认为可能有一些方法可以使用类似的东西
if object.content_markdown_[locale]_changed?
generate_new_html
end
可以在所有可能的语言环境中循环运行。但我找不到任何好的方法来做到这一点。