jjzjj

read-the-docs

全部标签

ruby 习语 : predicates and the conditional operator

我喜欢明智地使用三元条件运算符。在我看来,它非常简洁。但是,在ruby​​中,我发现我经常测试谓词方法,它们已经有了自己的问号:some_method(x.predicate??foo:bar)这两个问号靠得太近让我感到震惊。是否有同等紧凑和可读的替代方案? 最佳答案 C中需要条件运算符的原因是,条件语句是一个语句,即它不(也不能)返回值。所以,如果你想从条件代码中返回一个值,那你就不走运了。这就是必须添加条件运算符的原因:它是一个表达式,即它返回一个值。然而,在Ruby中,条件运算符是完全多余的,因为无论如何Ruby都没有语句。一

ruby-on-rails - 对于新的 ActiveRecord 模型,为什么有些 has_many :through associations add a (1=0) predicate and distinct clause to the sql query?

每当我实例化一个新的ActiveRecord模型(一个尚未持久化到数据库中的模型)并尝试访问构建模型上的一些各种关联时,Rails查询构建器有时会:将(1=0)谓词添加到查询的where子句。在select语句中添加“distinct”子句。我认为这只会在has_many:through关联连接两个或多个表时发生。我想知道为什么它添加了(1=0)谓词以及distinct子句。对于(1=0)谓词,新模型是否已保存到数据库应该无关紧要(对吧?)。我不知道为什么要添加distinct子句。我在下面有一个简单的例子。classAssignment#s.assignment_attachment

ruby-on-rails - 如何在 rails 中使用载波 'after the fact' 裁剪图像?

我想做的是上传一张图片,然后将用户带到一个新页面,我将在该页面上使用Jcrop让用户选择他们想要裁剪的图片部分,然后存储该图片。本质上,我想让它成为一个两阶段过程。我知道如何执行javascript部分,并且我了解如何创建此功能的基本流程。但是,我不知道关于如何实现此目的的载波细节。我能找到的最接近的是:image.recreate_versions!但我仍然无法传入高度/宽度和开始x,y来裁剪它。例如,我如何告诉carrierwave在“事后”进行裁剪-即不是在第一次上传图像时?我看到了“处理”图像的方法,但它们会以固定的高度和宽度自动发生。我该如何延迟呢?本质上,我想做的是动态定义

ruby-on-rails - rails 3.2.8 中未定义的 read_inheritable_attribute

升级到rails3.2.8后出现以下错误信息NoMethodError(undefinedmethod`read_inheritable_attribute'forAdminController:Class):谁能解释一下如何解决这个错误?整个轨迹NoMethodError(undefinedmethod`read_inheritable_attribute'forAdminController:Class):vendor/plugins/ssl_requirement/lib/ssl_requirement.rb:45:in`ssl_allowed?'vendor/plugins/s

ruby-on-rails - ruby rails : How do you list the partial paths that are rendered for a page?

我希望列出为我的应用程序中的每个页面呈现的部分内容。例如,当显示app/tasks/index.html.erb页面时,我想向用户显示如下内容:Partialsrenderedforthispage:tasks/_list.html.erbtasks/_button.html.erbtasks/_navigation.html.erb在RubyonRails中有什么方法可以做到这一点吗? 最佳答案 是的,在Rails中完全可以做到这一点!正如bdares在他的评论中指出的那样,用于模板渲染的行出现在日志中。但他们最初是如何到达那里的

ruby-on-rails - PinsController#index : declare the formats your controller responds to in the class level 中的运行时错误

在我的Rails应用程序上工作时,我在终端中使用以下命令创建了一个“Pins”脚手架:railsgeneratescaffoldPinsdescription:string--skip-stylesheets这会在我的应用程序中创建脚手架,然后我运行:rakedb:migrate一切顺利。我没有更改任何生成的页面,但是当我最终尝试访问localhost:3000上的新脚手架时,出现以下错误:RuntimeErrorinPinsController#indexInordertouserespond_with,firstyouneedtodeclaretheformatsyourcontr

ruby - 学习 Ruby : recommended blogs to read?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我即将开始学习Ruby,想要一些阅读Material来帮助我融入其中。我正在寻找你在Ruby上的前5博客、新闻和任何(活跃的)公告板(我可以很好地处理新闻组,但我更喜欢在BB中阅读)。谢谢,

ruby-on-rails - Ruby 2.3 safe navigation operator '&. and the ' 之间有什么区别试试!来自 ActiveSupport 的方法?

Ruby2.3的安全运算符&.和ActiveSupport的try!方法可以互换吗?如果不是,它们之间有什么区别? 最佳答案 一个关键的区别是try!是一个额外的方法调用,而&.不是。我能想到这造成的一个(公认的人为的)差异"1234"&.gsub(/\d/,"a")$&#=>"1234"这并不奇怪-我进行了正则表达式匹配,因此设置了正则表达式全局变量($&是匹配的字符串)。但是如果(在新的irbsession中——这很重要)我这样做"1234".try!(:gsub,/\d+/,"a")$&#=>nil然后正则表达式相关的全局变量

ruby - SSL_connect returned=1 errno=0 state=SSLv3 read server hello A: 版本号错误 (OpenSSL::SSL::SSLError)

当我运行https.ssl_version=:TLSv1_2我得到了错误ruby/2.1.0/net/http.rb:920:in`connect':SSL_connectreturned=1errno=0state=SSLv3readserverhelloA:wrongversionnumber(OpenSSL::SSL::SSLError)当我更改为https.ssl_version=:SSLv3ruby/2.1.0/net/http.rb:920:in`connect':SSL_connectSYSCALLreturned=5errno=0state=SSLv3readserve

Ruby Guard 问题 - 'Please install the sqlite3 adapter' - railstutorial.org

我正在关注RubyonRailsTutorial并且在测试部分变得有些困惑,特别是-3.6.2-AutomatedtestswithGuard按照部署到Heroku的教程说明,我已切换到Postgresql并从我的gemfile中删除了sqlite3,并进行了捆绑安装以进行更新。但是,一旦我运行bundleexecguard我收到消息:/Users/username/.rvm/gems/ruby-1.9.3-p125@global/gems/bundler-1.1.3/lib/bundler/rubygems_integration.rb:147:inblockinreplace_ge