【问题标题】:how to add result from another method to an array如何将另一个方法的结果添加到数组中
【发布时间】:2017-09-17 18:47:08
【问题描述】:

我有以下方法,我正在尝试将customer_status.status 添加到结果数组中,但出现错误undefined method <<

def self.latest_customer_details(user_id)
  latest = latest_within_last_year(user_id)
  return nil unless latest.present?
  customer_status = customer_status(user_id)
  result = Customer.new('customer_info', latest.customer_info, latest.status, latest.purchase_date)
  result << customer_status.status
end

我该如何解决这个问题?

【问题讨论】:

  • resultCustomer 对象,而不是数组。仅当 Customer 继承自 Array 时,您的最后一行才有效。

标签: arrays ruby ruby-on-rails-4


【解决方案1】:

因为这条线:

customer_status = customer_status(user_id)

变量customer_status 成为customer_status(user_id) 的返回值或最后一行。因此,当您尝试调用 customer_status.status 时,它不知道如何调用,因为 customer_status 方法已被覆盖。

【讨论】:

    猜你喜欢
    • 2010-12-20
    • 1970-01-01
    • 1970-01-01
    • 2011-11-04
    • 2012-09-11
    • 2019-05-14
    • 1970-01-01
    • 1970-01-01
    • 2022-01-13
    相关资源
    最近更新 更多