【问题标题】:What is the limit of Sinatra?辛纳屈的极限是多少?
【发布时间】:2011-03-05 07:56:29
【问题描述】:

我最近一直在学习 Ruby Web 框架Sinatra,我发现它很好用。我读过的大多数关于它的文章和博客似乎都认为它只适用于小型网站或“小型”网络应用程序。这是真的?是否可以在 Sinatra 中构建完整的 Web 应用程序,或者 Ruby on Rails 是否可行?

【问题讨论】:

  • 我想说没有限制。 ;-)

标签: ruby-on-rails ruby model-view-controller sinatra


【解决方案1】:

理论上,您可以使用 Sinatra 构建一个完整的 Web 应用程序,它会为您提供比 Ruby on Rails 更精确的控制。

也就是说,它还删除了 ruby​​ on rails 为您提供的所有不错的功能,例如模型-视图-控制器架构。

如果您希望构建具有数据库交互的 Web 应用程序,我强烈建议您使用 Ruby on Rails。

如果您希望构建一个非常简单的 API 或仅需要一些数据并将其发送到 Twitter 或其他东西的东西,请继续使用 Sinatra。

【讨论】:

  • sinatra 究竟是什么迫使您失去了 MVC 架构?我会争辩说你失去了以“rails 方式”做事,但没有什么能阻止你以 MVC 方式组织你的应用程序。此外,如果您需要在您的 sinatra 应用程序中使用 ActiveRecord gem,那么您将拥有您可能想要的所有来自 rails 的数据库交互。 Sinatra 允许您以您的 方式做事。我认为它不会以任何方式限制你。
  • 我说它删除了它的架构,而不是使用它的能力。我也从未说过它会限制你(事实上我说它提供了更精确的控制)。我的观点是,Rails 提供(并且在某种程度上要求)一个可靠的 MVC 架构,而 Sinatra 没有。
【解决方案2】:

没有理由不能用它来构建企业网站。它快速且直观。构建更大的 Web 应用程序的两个关键因素。虽然它确实缺少 Rails 的许多功能,但我还没有遇到障碍。

我个人喜欢 Sinatra 的苗条本性。它包含路由而不是让它令人头疼。

我通常会发现自己与 Rails 搏斗,而我会根据自己的喜好配置 Sinatra。

至于数据库交互,mongo_mapper + Sinatra 效果很好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-19
    相关资源
    最近更新 更多