我现在正在学习 RoR,并提出了创建一个非常简单的内容管理系统的想法。我想允许用户通过添加字段来创建内容结构,然后应用程序将创建页面以添加新项目并列出给定类型的所有项目。我在 Drupal 中看到过类似的东西,用户可以定义自己的内容类型。
我想知道怎么做:
1.使用关系数据库:我是否应该将内容类型存储为(例如)“id => type_of_field”的序列化哈希,并在从用户那里获取后执行 SQL 在控制器中创建数据库模式?有没有更好的方法来实现这一目标?它会导致未来的数据库迁移出现问题吗?
2.如何创建视图、控制器和路由?是否应该只有一个控制器自己处理内容类型的路由,而不使用 routes.rb 并从部分动态创建视图?有没有更优雅的方法来做到这一点?感谢所有线索。