草庐IT

android - Place Picker 启动后自动关闭

全部标签

ruby - 您可以在 irb session 中自动在每个命令上执行 'require' ruby​​ 文件吗?

我目前正在编辑一个文件,我正在使用irb来测试api:>require'./file.rb'>o=Object.new>o.method然后我希望能够编辑file.rb,并能够立即看到更改。示例:假设当我第一次需要file.rb时new_method不存在:>o.new_method这将返回一个错误。是否有沙盒/开发人员模式或方法可以实现上述目标而不必每次都重新加载文件?无论如何,在第一个要求之后要求将不起作用。我假设最坏的情况是我不得不改用负载。 最佳答案 我通常会像这样创建一个简单的函数:defreloadload'myscri

ruby-on-rails - 在 ruby​​ on rails 中自动设置语言环境

这个问题在这里已经有了答案:DetectbrowserlanguageinRails(5个答案)关闭3年前。如何在ruby​​onrails上自动设置语言环境?例如,如果网页在西类牙打开,那么locale=es,同样如果在英国,那么locale=en等等?请帮帮我。

ruby - 启动没有前缀 "Ruby"的 Ruby

我正在使用OSX(使用bash),并且是unix的新手。我想知道是否可以修改一些文件以便运行ruby​​程序,我不需要“rubyfile.rb”,而是可以运行“ruby.rb”。有理由不这样做吗?谢谢! 最佳答案 是的,你可以做到这一点。假设ruby.rb里面有这样的东西:#!/usr/bin/envrubyputs'Helloworld'在命令行:chmod+xruby​​.rb这使其可执行。然后你可以这样执行:./ruby.rb有关详细信息,请参阅wikibooks.编辑(JörgWMittag):使用#!/usr/bin/en

Ruby:如何检测套接字的一侧何时关闭

如何检测套接字处于半开状态?我正在处理的情况是套接字的另一端发送了一个FIN,而Ruby应用程序已确认该FIN。有没有办法让我知道套接字处于这种情况?举个例子:require'socket's=TCPServer.new('0.0.0.0',5010)loopdoc=s.acceptuntilc.closed?pc.recv(1024)endend在这种情况下,当我远程登录到端口5010时,我会看到所有输入,直到我关闭远程登录session。届时,它将尽可能快地一遍又一遍地打印空字符串。 最佳答案 您正在使用阻塞调用recv,当另一

ruby-on-rails - 为什么一个空的 Rails 进程每次启动时都会有不同的内存占用?

我们一直在努力找出如何通过识别内存消耗大的gem并寻找替代方案或解决方案来减少我们的Rails应用程序的启动内存占用量。但在OSX上有一种行为令我感到莫名其妙。使用全新生成的Rails应用程序(railsnewmemoryusage),没有Gemfile,没有模型,没有数据,也没有事务,启动railsc时内存每次启动时,对应的ruby​​进程的OSX显示都会有所不同,从低至60MB到高至65MB,没有明显的模式说明为什么同一个应用程序每次执行可能需要更少或更多的内存。我想这在某种程度上与Ruby分配内存的方式有关,但我不完全清楚为什么对于相同的代码且没有变量处理,它的内存分配会变化如此

ruby-on-rails - 如何自动找到用户的位置?

我目前正在制作一个节目列表网站。我将按位置显示以各种不同方式为用户排序的节目信息。我知道我可以在用户第一次登录网站时询问他们所在的位置,但我注意到许多网站都内置了自动检测位置的功能(例如,请参阅Last.fm“事件:您所在地区的音乐会列表”)。他们是怎么做到的?我目前正在使用RubyonRails构建我的网站。 最佳答案 这是相关GoogleMapsAPI文档的链接:http://code.google.com/apis/ajax/documentation/#ClientLocation它显示了如何使用它的示例:/***Setth

ruby-on-rails - 启动或确保延迟作业在应用程序/服务器重新启动时运行

我们必须使用delayed_job(或其他一些后台作业处理器)在后台运行作业,但我们不允许更改服务器上的启动脚本/启动级别。这意味着如果提供程序重新启动服务器,则不能保证守护进程保持可用(因为守护进程将由每次部署仅运行一次的capistrano配方启动)。目前,我能想到的确保delayed_job守护进程始终运行的最佳方法是向我们的Rails应用程序添加一个初始化程序,以检查守护进程是否正在运行。如果它没有运行,那么初始化器会启动守护进程,否则,它就让它保持运行。因此,问题是我们如何检测Delayed_Job守护程序是否在脚本内部运行?(我们应该能够很容易地启动一个守护进程,但我不知道

ruby-on-rails - 检测应用程序是否作为 HTTP 服务器启动(rake 任务、rconsole 等)

我正在使用EventMachine和Monetarily与我的Rails应用程序一起启动eTCP服务器。这是从config/initializers/momentarily.rb开始的。我的问题是当我运行rake任务时它也会启动,比如db:migrate。我只希望它在我启动HTTP服务器时启动。环境无济于事,因为服务器启动和rake任务都在开发环境下。有没有办法知道应用程序正在运行HTTP服务器而不是其他任何东西?请注意,这不仅是rake任务,如果我运行rails控制台,EM也会启动,这对我的情况来说也是不可取的。 最佳答案 unl

ruby-on-rails - 为什么 ActiveRecord 的自动保存对我的关联不起作用?

我有一个看起来像这样的ActiveRecord类。classFoobelongs_to:bar,autosave:truebefore_save:modify_bar...end如果我做一些日志记录,我看到bar正在被修改,但它的更改没有保存。怎么了? 最佳答案 这里的问题是autosave:true只是简单地设置了一个普通的before_save回调,而before_save回调是按照它们的顺序运行的'已创建。**因此,它尝试保存没有变化的bar,然后它调用modify_bar。解决方案是确保modify_bar回调在自动保存之前

ruby - 如何使用 "run"启动 Sinatra 应用程序

我尝试在我的Sinatra应用程序中使用Gemfile,但是当我启动我的应用程序时,出现了这个错误:$rubyconfig.ruconfig.ru:7:in`':undefinedmethod`run'formain:Object(NoMethodError)这是我的三个文件:你好.rb:get"/"do"Helloworld"endgem文件:gem"sinatra"配置.ru:require'rubygems'require'bundler'Bundler.requirerequireFile.join(File.dirname(__FILE__),'hi.rb')runSinat