序言:我知道宝石。
我在工作中使用Drupal。如果您不知道,Drupal 是模块。有一个框架和一个核心框架,但是当您在Drupal中构建一个站点时,安装和配置模块是大部分工作。
那么,作为Rails的新手,我有一个宠物项目,我正在尝试构建一个登录/用户系统。我看过the question about it here on Stack Overflow。
程序
如果您一年制作20个网站,18个网站具有相同的登录系统,您可以做些什么来最大限度地减少第2步?
是否有我不了解的社区支持或活动?这种配置是否超出惯例?
答案 0 :(得分:6)
Rails有“plugins”,这可以让你很好地模块化。实际上,当您在应用程序中使用gem时,通常会有一个存根插件来加载gem中的代码。看看the book!
然后,让整个事情更进一步使用Rails Engines,这可以让你插入整个应用程序块,而不需要额外的额外开销。
请注意,用于身份验证的标准解决方案实际上是插件。
答案 1 :(得分:2)
在Drupal(4,5和6)和Rails中完成开发后,我将分享一些观察结果:
Drupal!= Rails 虽然两者都是技术框架,但Rails比Drupal更不自然。使用Drupal,您可以获得开箱即用的页面和UI。使用Rails,更多的事情取决于你。
Rails有多种方法可以协助引导/代码重用,包括 gems , rails plugins 和现在 application templates
还有一些插件会比其他插件更能让你“抬起头” - 例如ActiveScaffold,为您提供功能齐全的管理区域。
不那么自以为是最终会给你更大的灵活性和力量。您可以使用完全不同的身份验证插件 - 比如AuthLogic vs RESTful Auth - 并选择最适合您的插件。
我仍然使用和推荐Drupal来快速开发Drupal +开箱即用模块(最小化主题)接近要求的站点。对于自定义应用程序,Rails的强大功能+ Ruby的快乐意味着它的插件架构恰到好处:轻巧而强大。
答案 2 :(得分:0)
正如吉姆所说,插件就是你所追求的。至于能够快速找到有用的插件,请查看我的Rails plugin directory。