问题描述
|
在Rails 3模型中。我可以使用助手吗?如果是这样的话。并可以在该帮助器中渲染视图,以允许将该视图存储在数据库中吗?
谢谢
解决方法
如果您将视图存储在数据库中,则无需编辑模型。您可以使用一些代码,例如:
render :inline => erb.view
erb是视图记录,而erb.view是实际的erb文本。
, 如果您告诉我们原因,也许会有所帮助?为什么要在数据库中存储视图的原始文本?
\“查看后的视图输出
处理。\”
我需要存储的结果
在模型中渲染。有没有办法
从模型调用控制器
得到输出?
您是否要基于模型渲染自定义视图或动态视图?为什么需要将这种观点与模型紧密地联系在一起?当然,如果您希望将某种原始的html / ruby存储在数据库中,那么您将尝试稍后将其再次取出。您是否考虑过完全改行?
\“有没有一种方法可以从模型中调用控制器以获取输出?\”确实,这是使您似乎不太了解“ rails way”的部分,但也许我们对您为什么要做什么以及要做什么的了解更多,我们可以告诉您是否有轨范。 (之所以这样说,是因为使用Rails的MVC设计约定,模型不渲染视图,而控制器则渲染视图。有充分的理由进行抽象/分离。)
可以使用在ActiveRecord DB存储过程中挂接到:before_create /:after_create样式回调的观察者来完成帮助程序样式的模型处理。