Tag: if statement

工作jQwery代码不在条件内工作

我想设置一个元素内容,以防它是空的。 html.erb代码如下: <ol id="comments_micropost-“> 我想要设置内容的元素是 。 当微博尚未发表评论时,其内容为空。 我在create.js.erb使用javascript处理注释的创建操作:我写了两行代码,这取决于micropost.comments是否为nil或者它不是nil: 案例1:micropost还没有评论( micropost.comments.any?是假的): $(‘#micropost-‘).find(‘.comments-section’).html(“”); 案例2:micropost已经发表评论( micropost.comments.any?是真的): var comments = $(‘ol#comments_micropost-‘); comments.append(”); 两个代码在单独使用时都有效。 但是,在以下条件中与案例2一起插入时,案例1的代码不起作用: if (comments == null) { $(‘#micropost-‘).find(‘.comments-section’).html(“”); } else { comments.append(”); }; 我不明白为什么if (comments == null)代码没有被执行。 我也试过if (comments == undefined)和if (!comments)没有任何改进。 相反,条件的else部分已成功执行。

如果有Devise和Rails的问题?

我只想创建一个对象的人,例如注册表来查看某些内容=,但是却在努力用Devise定义所有内容 这是代码: 提前致谢 PS我正在使用cancan,但这对我想要显示页面的节目页面没有帮助。

Ruby:如何检查哈希定义中是否存在变量

我是Ruby的新手。 有没有办法做到以下几点? hash = { :key1 => defined? value1 ? value1 : nil, :key2 => defined? value2 ? value2 : nil } puts hash[:key1] # outputs: [“expression”] 上面的代码存储表达式,而不是值 (如果已定义)或nil (如果未定义)。

如何在Ruby中编写“if in”语句

我正在寻找像Python这样的if-in语句用于Ruby。 基本上,如果an_array中的x 这是我正在处理的代码,其中变量“line”是一个数组。 def distance(destination, location, line) if destination and location in line puts “You have #{(n.index(destination) – n.index(location)).abs} stops to go” end end

Ruby:没有救援的其他方面毫无用处

我是ruby的新手。 我正在尝试编写一个apache error.log监视器。 它主要完成了,但我收到了警告:否则没有救援就没用了。 我无法弄清楚我做错了什么。 Ruby要我使用’除非’吗? class ErrorMonitor @@previous_size=0 @@counter=0 def initialize() end def process if @@counter > 0 @new_size= File.stat(‘/var/log/apache2/error.log’).size if @new_size > @@previous_size for i in @@previous_size..@new_size – @@previous_size print IO.readlines(“/var/log/apache2/error.log”)[i] end @@previous_size = @new_size end end else @@previous_size= File.stat(‘/var/log/apache2/error.log’).size @@counter=1; end # <- this line is where the warning points to end […]

Ruby中的`try`和`&.`(安全导航操作符)有什么区别?

这是我的代码: class Order < Grape::Entity expose :id { |order, options| order.id.obfuscate } expose :time_left_to_review do |order, options| byebug order&.time_left_to_review # ERROR end expose :created_at { |order, options| order.last_transition.created_at } end # NoMethodError Exception: undefined method `time_left_to_review' for # 我想&. 是.try的捷径,但我想我错了。 可能有人指出我正确的方向,我错过了什么? 我觉得这不是ruby相关的。 葡萄可能吗? 虽然我不明白它是怎么回事。

Ruby是一种在条件上执行函数的聪明方法

作为一个有趣的项目,我正在Ruby中实现Beatnik解释器。 如果您从未听说过Beatnik,那么它就是一种深奥的编程语言,其中的操作由源代码中单词的“scrabble score”指定。 无论如何,实现需要针对不同的拼字游戏分数进行不同的操作。 这不是特别实现的,一个明显的方法是if语句: if score == 1 … elsif score == 2 … else … end 另一种方法是使用case语句: case score when 1 … when 2 … else … end 但是这两种方法都不是特别优雅,你能否提出另一种方法来实现这一点?

Ruby gets()没有返回正确的字符串

我决定在听到所有关于它的好东西之后给Ruby一个机会,但到目前为止它只给了我一个艰难的时间。 很久以前我在学习Python时创建了一个“搜索引擎”,它只是将数据存储在数组中并检查搜索关键字是否在其中,我一直在尝试在Ruby中做同样的事情。 虽然它不像Python那样直观,但我的搜索function正常运行。 但是,我在处理用户输入时遇到了麻烦。 我想检查输入是否等于插入 , 搜索和退出 ,但它只是不起作用。 我真的不知道如何使用获取,所以我假设问题与获取有关。 while true puts ‘What do you want to do?’ choice = $stdin.gets puts choice # => quit if choice == ‘quit’ break end end if语句不起作用。 我到底做错了什么? 为了上帝的缘故,这在C ++中是微不足道的! 我真的很感激一些帮助。 Ruby对我来说太陌生了……谢谢!

Ruby中的一行if语句

我有以下代码: if day > 31 day -= 31 month = “April” end 我可以用不同于以下的一行编写它: if day > 31 then day -= 31 and month = “April” end ? 我试过它: if day > 31 {day -= 31; month = “April”} 但它不起作用

如果条件语句出现在表达式之前或之后,这是否重要?

对不起,如果这是一个愚蠢的问题,但我是一个C#家伙摸索着ruby的方式.. 在ruby中,我注意到很多人这样做: do_something(with params) if 1 = 1 这和之间有什么区别(甚至是轻微的): if 1 = 1 do_something(with params) 还是为了更清晰而写的是同一件事?