问题标签 [sinatra]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - Sinatra + Rack:Session:Pool
我正在使用 Rack:Session:Pool 进行基于内存的会话。我想访问在 Rack:Session:Pool 中联系的池实例变量,以便我可以看到所有活动会话和包含的数据。我怎样才能在 Sinatra 中或在 irb 提示符下做到这一点。
我最初的想法是::Sinatra:Application::Rack::Session:Pool,但这似乎给了我类而不是当前实例,因此无法访问池变量。
ruby - 在 Windows 上的每个请求上重新加载 Sinatra 应用程序
我已经Rack::Reload
根据这个线程设置
使用瘦 via 运行thin start -R config.ru
,但它只重新加载新添加的路由。当我更改已经存在的路线时,它仍然运行旧代码。
当我添加新路线时,它会正确地重新加载它,因此它是可访问的,但它不会重新加载其他任何东西。
例如,如果我将路线更改为
比/
仍然发球foo
,即使它已经改变,但/foo
会正确地重新加载和发球baz
。
这是正常行为,还是我错过了什么?我希望重新加载整个源文件。我现在能想到的唯一方法是在文件系统更改时重新启动整个网络服务器。
我在 Windows Vista x64 上运行,所以我不能使用shotgun,因为fork()
.
ruby-on-rails - 在视图中显示 Rails 响应时间
我正在尝试为我的 Rails 应用程序设置自定义 Pingdom 监控,并希望制作一个如下所示的 XML 响应:
其中 response_time 值是 Rails 呈现 XML 响应所用的时间。
我找到了一些使用 Mongrel 执行此操作的资源,但我使用的是 Apache Passenger。
我有一个作为 Sinatra-Metal 端点实现的解决方案,如下所示:
然后我有一个构建器视图:
(注意 response_time 以毫秒为单位)。
这个实现足以检查应用程序是否启动,但它是一个金属端点这一事实意味着它实际上并没有命中主 Rails 应用程序,因此并不是我的应用程序当前响应时间的一个很好的衡量标准。
有人对更好的方法有什么好的建议吗?
干杯,阿方
ruby - Ruby / Sinatra 中的范围
我正在尝试识别用户 ID 号,以从 ActiveRecord 表中获取学生行,但由于某种原因,“发布”块找不到我的 :id。
对于“get”,url 是 localhost:9456/update/17。正是这 17 我需要传递到“post”块来更新数据库。
我不知道该怎么做。解析网址?好像我错过了一些明显的东西。
谢谢!
ruby - 使用 Rack::Test 和 Sinatra 测试控制器实例变量
我有一个 Sinatra 应用程序,根据用户是否登录,该应用程序将页面提供为只读或可编辑的。
控制器设置一个变量@can_edit
,视图使用它来隐藏/显示编辑链接。如何@can_edit
在我的测试中 test 的值?我不知道如何在 Rack::Test 下获取控制器的当前实例。
我曾经在控制器class_eval
中存根该logged_in?
方法,但我不得不求助于检查last_response.body
我的编辑链接以查看是否@can_edit
已设置。
如何@can_edit
直接测试的值?
ruby-on-rails - 如何删除 mongomapper 中的嵌入文档?
我用 mongomapper 运行一个 sinatra 应用程序。我有名为 Movie(Document) 和 Cover(EmbeddedDocument) 的模型。我将封面嵌入到电影中使用
这很好用。
当我点击@movies.covers 时,我得到了嵌入文档的数组。但我无法销毁嵌入的文档。我试过这样的事情:
如何摧毁它?如果有人启发我如何更新嵌入式文档,那就太好了。
ruby - Sinatra / Rack 因 url 中的非 ascii 字符而失败
我在 /find/Wrocław "\xC5" 从 ASCII-8BIT 到 UTF-8 得到 Encoding::UndefinedConversionError
出于某种神秘的原因,sinatra 将字符串作为 ASCII 而不是 UTF-8 传递,因为它应该。
我发现了某种丑陋的解决方法...我不知道为什么 Rack 假设编码是 ASCII-8BIT ...无论如何,一种方法是使用 string.force_encoding("UTF-8")... 但是做这对所有参数来说都很乏味
ruby-on-rails - 是否可以将 sinatra 应用程序制作成 Rails 引擎?
我正在考虑使用 Integrity 作为持续集成工具,但不想(或不能)为应用程序设置单独的域。
是否有可能获得 Sinatra 应用程序(如完整性),并使其成为 Rails 引擎?一个人会怎么做呢?
编辑:我意识到“引擎”通常需要像控制器和视图这样的 Rails 代码。
伯尼
asp.net-mvc - .NET 中的小型网络框架,如 Sinatra、Ramaze 等
.NET 中是否有类似的框架,如 Sinatra、Ramaze 等?
我在理论上追求一个框架,让我用一个像 Sinatra 的类文件(概念上)创建一个完整的 web 应用程序。
我打算将它用于工作内部的东西,其中 ASP.NET MVC 太“大”(我对它的用法感到困惑),我现在已经听到了 WebForms(做一个基于 webforms 的大型项目,目前讨厌它;))
有什么建议么?
哦,我需要能够在 IIS 中托管它。我会选择 IronRuby 和 Sinatra,但我找不到在 IIS 中设置它的分步教程;)