在我的Rails应用程序中,用户可以参考“示例”策略列表,并根据这些示例创建自己的策略。我目前正在 SamplePolicy 模型中存储“示例”政策及其关联的文字HTML说明列表,其中列名为 Content 。用户可以阅读这些示例策略,然后创建自己的版本,这些版本又存储在名为策略的另一个模型中,该模型与 SamplePolicy 模型保持一对多的关系。请参阅下面的数据库结构:
SamplePolicy
--------------------------------------------------------------
| ID | Name | Content |
--------------------------------------------------------------
| 1 | Privacy | <html>Sample..</html>
--------------------------------------------------------------
| 2 | Copyright policy | <html> Sample....</html>
--------------------------------------------------------------
Policy
---------------------------------------------------------------------------------------
| ID | Name | Content | samplepolicy_id
---------------------------------------------------------------------------------------
| 1 | Custom Privacy | <html>My Sample..</html> | 1
--------------------------------------------------------------------------------------
| 2 | Custom Copyright policy | <html> My Sample....</html> | 2
--------------------------------------------------------------------------------------
问题是:
这是构建模型的最佳方法吗? 由于“示例策略”列表没有变化,我想我可以使用“seeds.rb”来填充我的应用程序,但之后我将无法在策略模型中引用这些示例策略(参见外键samplepolicy_id)。 但话说回来,我不确定将HTML内容存储在我的数据库中。
答案 0 :(得分:0)
如果您有多个样本策略,我认为单独的模型简洁明了。存储HTML很好。您可以使用纺织品,以便用户可以更轻松地将样本复制并编辑到他们自己的策略中。
如果你存储HTML,只需在渲染时使用html_safe。