ruby-on-rails - 创建 Rails gem

标签 ruby-on-rails ruby ember.js rubygems ruby-on-rails-4

我想以模块化的方式构建我的应用程序:例如我可能有:

Users->has_and_belongs_to_many->Projects
Users->has_and_belongs_to_many->Tasks
Projects->has_many->Tasks
Tasks->belongs_to->Project (1 task belongs to 1 project.)

注意:项目和任务可以有很多用户。

我想构建它的方法是:

  • 用户= gem
  • 项目 = Gem
  • 任务 = gem

每个都可以返回 json(用于 ember)或 html。两者都不依赖于彼此,想法是每个只是一个细节。 Rails、ember 和 html 都只是细节。

我怎样才能解决这个问题,并在一天结束时将它们像拼图一样拼在一起?或者这是否可行?

现在我几乎完成了这个概念的用户部分。它包含模型、测试、 Controller 和 View 。我可以将其捆绑为 gem 还是应该只捆绑 Controller 和模型?这个“用户”gem 将使用 friendlyId gem 使 url 看起来不错,事实上所有的“gems”(项目、任务和用户)都将依赖于这个 gem。

您建议如何实现我想要的模块化?这是好习惯吗?不好的做法?

最佳答案

Pivotal Labs 做了一个演示(雅典的 Euruko 2013),他们展示了一种类似于您所描述的 Rails 引擎方法。这是演示 http://www.ustream.tv/recorded/35107339/highlight/377037

虽然我还没有在实践中看到它,但我想。

关于ruby-on-rails - 创建 Rails gem ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19058993/

相关文章:

ruby-on-rails - 我应该如何将已排序的项目存储在数据库中?

ruby-on-rails - 从正则表达式数组中查找正则表达式匹配项

ruby-on-rails - prawnto 显示新页面时不会中断的表格

ruby - 如何运行 Ruby gem 的规范?

javascript - TransitionTo 后 Ember.js 历史记录不起作用

jquery - 我可以从 jquery 函数创建 ember 计算属性吗?

ember.js - 如何克隆 Ember 数据记录,包括关系?

ruby-on-rails - 这是一个已知的 Rails Manager 模式吗

ruby-on-rails - 将 Account 和 User 表与 Devise 一起使用

ruby-on-rails - 数组中元素的 Mongoid 正则表达式