Tag: 返回

Rails:表列返回nil(无响应)

这是我能够解决的先前问题的延续: 参数未正确保存(Rails) 但现在我遇到了一个陌生人的问题。 虽然我可以获取要保存的参数,但是当我尝试引用它时它没有响应。 该模型: # == Schema Information # # Table name: messages # # id :integer not null, primary key # content :text # sender_id :integer # recipient_list :text # created_at :datetime not null # updated_at :datetime not null # class Message < ActiveRecord::Base attr_accessible :content, :sender_id, :recipient_list attr_reader :recipient_list #necessary for jquery-token-fields […]

在Y循环中创建一个for X将返回它包含的语句返回的内容

以下声明…… content_tag(:li, concept.title) …返回类似于: “My big idea” 调用时,以下方法定义返回相同的内容: def list_of_concepts(part) content_tag(:li, concept.title) end 同样…… def list_of_concepts(part) content_tag(:li, part.concepts.first.title) end 但以下…… def list_of_concepts(part) for concept in part.concepts content_tag(:li, concept.title) end end …在我看来,只是给了我一堆英镑符号(“ # ”),就像它返回true或false或count,而不是content_tag返回。 如何让它返回content_tag返回的内容? 再次感谢, 史蒂芬。

如果评估的Last语句是If语句,则返回Ruby中的内容

我的理解是ruby返回函数中计算的最后一个语句。 如果函数以if语句结束,该语句的计算结果为false,那该怎么办? def thing(input) item = input == “hi” if item [] end end puts thing(“hi”).class #> Array puts thing(“not hi”).class #> NilClass 我喜欢这个function(如果语句为false则返回nil ),但为什么不返回false (从赋值到item )?

Ruby中的隐式返回值

我对Ruby有点新鲜,虽然我发现它是一种非常直观的语言,但我很难理解隐式返回值的行为方式。 我正在开发一个小程序来grep Tomcat日志并从相关数据生成管道分隔的CSV文件。 这是我用来从日志条目生成行的简化示例。 class LineMatcher class << self def match(line, regex) output = "" line.scan(regex).each do |matched| output << matched.join("|") << "\n" end return output end end end puts LineMatcher.match("00:00:13,207 06/18 INFO stateLogger – TerminationRequest[accountId=AccountId@66679198[accountNumber=0951714636005,srNumber=20]", /^(\d{2}:\d{2}:\d{2},\d{3}).*?(\d{2}\/\d{2}).*?\[accountNumber=(\d*?),srNumber=(\d*?)\]/) 当我运行这段代码时,我得到了以下内容,这是显式返回输出值时的预期结果。 00:00:13,207|06/18|0951714636005|20 但是,如果我将LineMatcher更改为以下内容并且不显式返回输出: class LineMatcher class << self def match(line, regex) output = "" line.scan(regex).each do |matched| output […]