ruby相关内容

解决Sinatra路由方法中缺乏上下文的问题

我在调用路由时遇到了缺少实例和nilClass错误的问题。在深入研究源代码之后,似乎GENERATE_METHOD调用基本上使用初始方法的挡路创建了一个新方法。 get "/" do @some_local_instance.do_something() end 因此,在上面的方法中,该类中很可能有一个名为SOME_LOCAL_INSTANCE的局部变量,但是当实际计算ROTER ..
发布时间:2022-03-29 09:47:20 其他开发

我应该把我想要在应用程序关闭时执行的代码放在Sinatra的什么地方?

我正在使用Sinatra作为我的Web应用程序。我有一些要在应用程序关闭时执行的清理代码。在Sinatra中是否有此挂钩,或者我是否必须使用单独的机制? 推荐答案 查看Kernel#at_exit,如果您在主应用文件中的某个位置定义了类似的挡路,我不明白为什么它不能在Sinatra应用中运行。 更新:根据Matt的评论,您必须在需要Sinatra之前定义at_exit处理程序。 ..
发布时间:2022-03-29 09:45:59 其他开发

Pony yandex.ru和Mail.ru详细说明

我在Sinatra中创建了一个表单,该表单将使用Pony gem在提交时将数据发送到电子邮件。这是我到目前为止的代码: post '/pemco' do Pony.mail( :from => params[:name] + " '___@yandex.ru', :subject => params[:name ..
发布时间:2022-03-29 09:44:17 其他开发

Sinatra应用程序在运行时不启动

我使用的是Ubuntu 10.10/Ruby 1.9.2 无论我做什么,我都无法在本地计算机上启动Sinatra应用程序。 hello.rb: require 'sinatra' get '/' do "Hello World!" end “$ruby hello.rb”和“$ruby-rubygems hello.rb”都会导致不执行任何操作的新提示。 有什么提示 ..
发布时间:2022-03-29 09:39:59 其他开发

Sinatra模板内的IF语句

我希望仅在特定路由/页面上显示消息。实质上,如果在/ROUTE上显示一条消息。 我试着浏览了Sinatra文档,但找不到具体的方法。是否有Ruby方法可以使此工作? 编辑:这是我想做的一个示例。 get '/' do erb :index end get '/page1' do erb :page1 end get '/page2' do erb :p ..
发布时间:2022-03-29 09:32:32 其他开发

Sinatra/Ruby默认参数

是否有方法默认Sinatra中的参数? 我目前正在查看是否将'start'作为参数传递,但似乎有点老生常谈。如果我可以告诉Sinatra在未指定某些参数时将其设为默认值,那就太好了。 get '/comments/?' do # want to setup page stuff, default to first page if not specified params[: ..
发布时间:2022-03-29 09:28:51 其他开发

如何默默启动Sinatra+Thin?

我有一个Sinatra::Base Web服务,我想从命令行Ruby程序启动它,所以我有这个: # command line program file require 'mymodule/server' puts "Running on 0.0.0.0:4567, debugging to STDOUT..." MyModule::Server.run! bind: '0.0.0.0', ..
发布时间:2022-03-29 09:27:13 其他开发

如何在Sinatra中更改日志级别

我正在使用此代码在我的Sinatra应用程序中启用日志记录: log_file = File.new('my_log_file.log', "a") $stdout.reopen(log_file) $stderr.reopen(log_file) $stdout.sync=true $stderr.sync=true 实际日志记录使用: logger.debug("St ..
发布时间:2022-03-29 09:23:40 其他开发

Ruby续集模块中的事务:如何获取DB对象?

我正在使用Sequel在Sinatra应用程序中工作。 我要进行交易,根据manual我必须使用DB对象,如何从代码的任何部分获取此对象? 推荐答案 您可以在基本app.rb(或等效文件)中定义它,也可以根据需要包括一个单独的文件,在其中配置DB对象。 例如,在我的一个Sinatra应用程序中,我有一个app.rb,其中包含 class App ..
发布时间:2022-03-29 09:11:04 其他开发

如何在另一个Sinatra应用程序中挂载Sinatra应用程序?

我正在尝试编写一个Sinatra应用程序,它将组件组合在一起(有点像控制器)。所以对于“博客”相关的东西,我想要一个名为Blog的应用程序安装在/blog上。Blog应用程序中包含的所有路由都是相对于其挂载路径的,因此我可以简单地定义index路由,而不必在路由中指定挂载路径。 我最初是通过使用一个config.ru文件和map指定不同应用程序的路径来处理这一问题的。我遇到的问题是,我使用的是需 ..
发布时间:2022-03-29 09:05:45 其他开发

辛纳特拉和拉梅泽的主要区别是什么?

我正在寻找一个轻量级的Ruby web框架,我遇到了Sinatra和Ramaze。两者看起来都非常轻盈、简洁和简单。但我对两者都不太了解,无法说出它们的主要区别是什么。或许对其中一项或两项都有经验的人可以发表评论? 推荐答案 Sinatra不强制执行mvc。 ..
发布时间:2022-03-28 23:51:22 其他开发

从属性路径创建模式

给定RDF::URI和SPARQL属性路径(存储为字符串),我希望找到满足以下查询的值 SELECT ?value WHERE { ?value . } 我设法使用了以下代码片段,但感觉非常黑客: query = SPARQL.parse( ..
发布时间:2022-03-26 15:15:52 其他开发

液态模板语言中的宏

我使用的是Jekyll,它使用液态模板语言。我过去使用过JJJA模板,它有macro(只是一个命名函数)的概念。液体有没有提供同等功能的东西?如果没有,有没有可以提供液体的Jekyll插件? 推荐答案 您可以创建包含接受参数。它不完全是宏,但它是我在GitHub页面上成功使用的。 有关管理包含和使用参数的更多详细信息和提示,请参阅in the Jekyll documentation ..
发布时间:2022-03-16 19:24:51 其他开发

在Mac OS X 10.9.5上安装Ruby 2.1.3时检查或清除工作树错误

我正在尝试使用rbenv install 2.1.3命令在MacOSX 10.9.5上安装Ruby 2.1.3。但是,我收到下面的错误消息。我尝试了所有关于堆栈溢出和其他地方的建议。似乎什么都不管用。我目前有10.9.5附带的原始Ruby版本,Ruby2.1.3p242。酿酒医生说一切都很好,rbenv是最新的。非常感谢!正在尝试学习Ruby和Ruby on Rails,但我无法通过此阶段。 ..
发布时间:2022-03-14 16:45:49 服务器开发

在MacOS Big Sur中Ruby安装(2.2.2)失败

我在MacOS Big Sur上安装Ruby 2.2.2时遇到了一些问题。有没有人有类似的问题可以解决?非常感谢🙏 错误: `Downloading openssl-1.0.2u.tar.gz... -> https://dqw8nmjcqpjn7.cloudfront.net/ecd0c6ffb493dd06707d38b14bb4d8c2288bb7033735606569d8f ..
发布时间:2022-03-14 16:06:21 其他开发