我现在正在学习RoR,并想出了创建一个非常简单的内容管理系统的想法。我想允许用户通过添加字段来创建内容结构,然后应用程序会创建页面来添加新项目并列出给定类型的所有项目。我在Drupal中看到了类似的东西,用户可以定义自己的内容类型。
我想知道怎么做:
1.使用关系数据库:我是否应该将内容类型存储为(例如)"id=>type_of_field"的序列化哈希,并在从用户那里获得后执行SQL在控制器中创建数据库架构?有没有更好的方法来实现这一点?它是否会导致未来数据库迁移出现问题?
2.如何创建视图、控制器和管线?是否应该只有一个控制器单独处理到内容类型的路由,而不使用routes.rb并从局部动态创建视图?有更优雅的方法吗?感谢提供所有线索。
您可以修复基本的简单CMS的布局。像left_side_bar、can_left_side_bar、right_side_bar、top_nav、sub_nav、页脚、页眉、正文DB字段和显示内容的检查。所以基本上可以减少页面并映射到数据库字段、
查看各种可用的CMS并浏览它们的体系结构,这将帮助您从体系结构的角度进行理解。
CMS列表https://www.ruby-toolbox.com/categories/content_management_systems