几周后我将开始一个项目,这是一个网络应用程序,可以为同一家公司的子公司处理多种语言的网站。尽管前端可能看起来不同,但它们都订阅了它下面的相同模型设计。
但主要要求之一是每个子公司可以选择模型的哪些字段将显示在他们的网站上。
例如:有一个Program
模型
class Program < AR
attr_accessible :starting_at, :ending_at, :name, :price, :country
end
因此,如果我有这家公司的两个子公司,即美国和瑞典,它们都使用相同的模型来呈现节目。但是美国分公司想要显示一个包含所有程序的表格,并且每个程序只显示starting_at
、和。瑞典分公司也想做同样的事,但不想展示。ending_at
name
price
ending_at
country
此外,他们希望能够通过 Web 界面选择要显示的字段,因为它会随着时间而改变。
所以我的想法是 - 因为有很多元建模正在进行 - 提出一个MetaProgram
模型,或者这样,它包含应该显示哪个子公司的哪个字段的信息等。但这会导致动态 SQL 语句ActiveRecord
,因为我总是必须选择必须选择哪些字段,然后选择实际数据以通过前端呈现它......
有没有更好的解决方案,或者有一种宝石可以解决这种问题?
PS:抱歉标题含糊