问题标签 [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-on-rails - 对于不同类型的 Ruby 应用程序,最常用的单元测试框架是什么?
相同的单元测试框架是否用于不同的 Web 框架——Rails、Merb、Sinatra、Ramaze 和桌面框架——鞋子?
什么是最广泛使用的单元测试框架,可以与所有各种 Web 和桌面框架一起使用?
ruby - 将 Sinatra/Rack 应用程序制作成一个本地可执行文件有什么好处?
我正在阅读维加斯的描述,这是一颗宝石
旨在解决创建 Sinatra/Rack 应用程序的可执行版本的简单问题。
我不知道这是一个需要解决的问题。
这似乎是可疑的好处的原因是因为:
运行 Sinatra 应用程序不是已经非常容易了吗?你只需输入
除了应用程序是后台进程之外,所有这些相同的事情都会发生。
为什么你需要一个可执行文件呢?
ruby - Sinatra“后”过滤器
Sinatra 有一个“之前”过滤器,但有没有一种简单的方法来实现“之后”过滤器?
sinatra - 如何为带有乘客的 Sinatra 应用程序配置 VirtualHost?
我在Passenger 上运行了一个Rails 应用程序,一切正常。
我想添加一个 Sinatra 应用程序作为 Rack 应用程序与乘客一起运行,但我收到一个路由错误。
我的 VirtualHosts 文件如下所示:
我的 Sinatra 应用程序非常简单;我有一条get "/do_something" do ....
没有公共文件的路线。它只响应一些 JSON。
我怎样才能让它做类似的请求www.sub.domain2.com/do_something
ruby - 如何使用 sinatra 制作 html 表单?
是否有一些实用程序可用,以便我可以轻松地将请求中传递的表单字段封装在对象中,或者我是否必须通过解析每个请求中的参数字段来自己创建它?
ruby - 使用 Rack::Session::Datamapper
mkristgan 的rack_datamapper gem 说它“可以被包装以在特定环境中使用,即 Rack::Session::Datamapper”。
不幸的是,我对 Ruby 的了解还不足以完成这项任务——Ruby 中的模块/类仍然在我的脑海中(来自 PHP)。
任何人都可以提供使用 rack_datamapper 来实现 Rack::Session::Datamapper 的帮助吗?
无论如何,您可能不想这样做。
下面的答案很好,但仔细考虑后,我意识到我不应该这样做。相反,我将 user_id、ip 和名字(为方便起见)放在 cookie 中并保护它。
ruby - 如何检查 Sinatra 中是否存在模板
在 Sinatra ruby 框架中,我有这样一条路线:
如果模板存在(例如,如果我点击/portfolio/website
,并且我有一个名为 的模板/views/website.haml
),这很好用,但是如果我尝试一个没有模板的 URL,例如example.com/portfolio/notemplate
,我会收到此错误:
Errno::ENOENT at /portfolio/notemplate
没有这样的文件或目录 - /.../views/notemplate.haml
如何测试并捕获模板是否存在?我在 Sinatra 文档中找不到“如果模板存在”方法。
ruby - 自动记录 DataMapper 查询
我正在使用 DataMapper 在 Sinatra 中开发一个简单的应用程序。我想查看 DM 为我的各种链式查找器等创建的查询。
我试过了:
在我的configure do ... end
块中environment.rb
,在应用程序启动时加载的文件中。
我也试过:
通过浏览器或通过irb
需要我的应用程序的会话访问的应用程序都不会产生日志语句。我确实看到了应用程序启动消息。
我rackup config.ru
用来在本地运行应用程序。
我错过了什么?
ruby - 在生产环境中调试 Sinatra 应用程序时遇到问题
我正在使用乘客部署 Sinatra 应用程序。部署的应用程序正在运行,但并非完全正常:一些路径运行良好,其他路径只是呈现空白页面。我似乎找不到有效的路线和无效的路线之间的任何主要区别,而且我似乎无法找到任何错误..
处理程序
我定义了 not_found 和错误处理程序如下:
这些在我的本地机器上运行良好,无论是在开发还是生产中,但我从来没有看到这些出现在服务器上。
阿帕奇日志
当我跟踪 Apache 的 access.log 并点击其中一条损坏的路径时,我看到了 500:
rack_hoptoad
我还在我的 config.ru 中安装并配置了 rack_hoptoad中间件,但没有例外将其用于 hoptoad。
日志记录
我已经像这样设置了日志记录..
此设置允许我在我的路由中调用logger.info,该路由在本地和服务器上运行以获取工作路由,但损坏的路径不足以调用 logger.info。
该怎么办?
关于如何查看导致 500 错误的原因的任何想法?谢谢你的帮助!
sqlite - 将 sqlite3 db 推送到 heroku 时出现问题:lib/taps/schema.rb:30:in `sqlite_config': undefined method `[]' for nil:NilClass (NoMethodError)
我有一个 Sinatra DataMapper 应用程序访问我试图部署到 Heroku 的 sqlite3 数据库。第一遍,我将我的数据库文件包含在 git repo 中。这在应用程序运行时有效,但生产数据不属于存储库。但它并没有真正起作用,因为数据库是只读的。
然后我删除了用于源代码控制的 db 文件并尝试了heroku db:push sqlite://db/my-app.db
. 此命令产生以下 stact 跟踪:
知道可能是什么原因造成的,我该如何解决?