4

如果这是一个有明显答案的菜鸟问题,请原谅我,但是在 Sinatra 中使用机架闪存有什么意义呢?

感觉就像机架闪存功能可以很容易地自己编写,而 gem 有点矫枉过正。Rack 是否提供了我缺少的东西?

4

2 回答 2

2

自述文件解决了这个问题:

flash[:notice] = "You can stop rolling your own now."

感觉就像机架闪存功能可以很容易地自己编写,而 gem 有点矫枉过正。Rack 是否提供了我缺少的东西?

是的:

  • 它作为 gem 分发,因此您不必跨项目复制 Flash 实现。这种可重用性是关键。
  • 该接口与 Rails 一致,因此您代码的未来维护者将不必研究您的特殊实现。
  • 它在社区中得到了很好的测试和开发。
  • 您不会浪费时间重新发明一个小齿轮。

除非您的应用程序的核心功能是闪烁消息,否则这个提供上述好处的大约 100 SLOC 的小宝石几乎不会过大。

于 2012-11-14T08:24:03.187 回答
0

我只是在我的会话数据中添加一条消息,如果它在那里,则将其闪烁。这也是机架式闪存所做的。我看过它一次,我需要查找它的 API 的时间是我需要自己一遍又一遍地编写它的时间。也许我在这里遗漏了一些东西,但是 iirc 的一个 flash gem 打破了一些 Sinatra 更新,如果你依赖 gem,那就是痛苦开始的地方。

于 2012-11-15T18:46:17.993 回答