我已经完成了 O'Really 的 Learning Rails 3,现在是时候在真实项目中试验知识了,我将部署到 Red Hat 的 OpenShift 平台。在我的笔记本电脑代码项目文件夹中搜索,我找到了一个简单的 TODO 任务管理器,我曾经用 C++ 编写过一次。因此,让该项目重新焕发生机是个好主意,这次是作为 Rails 中的 Web 任务管理服务,允许使用 OmniAuth 进行身份验证。
最初的 C++ 项目是从 OOP 的角度计划的。您可以创建一个带有当前 ID 号、文本字符串、日期和时间的“任务”对象。任务的每个部分都作为不同的 C++ 类。Eash one 在构造函数上包含了它的验证。然后将任务保存到 sqlite 或将它们导出为纯文本,您可以在应用程序上共享或再次阅读。
所以,回到正题,我正在尝试使用 MVC 将这个小应用程序改编为 Rails 中更复杂的东西。
我考虑过添加一个脚手架,它可以让表单填充任务的文本字段并将其传递给控制器。控制器将设置当前日期和时间,保存到数据库时默认设置 ID。验证应该在模型上进行,我将创建一个迁移以在该字段上构建一个表。由于我将使用 OmniAuth 添加多用户支持(因此每个用户都可以保存自己的任务),我应该创建一个包含用户信息的新数据库表。
但是我应该为每个用户创建一个新的任务表,然后将它们映射到用户表吗?或者只是创建一个任务表并将每个用户的任务放入其中,然后将所有任务映射到那里?
我想不出将用户任务保存到数据库的好处。
有任何想法吗?
提前致谢