Ruby on rails 在模型中包含helper方法

Ruby on rails 在模型中包含helper方法,ruby-on-rails,Ruby On Rails,如何在模型中包含在助手中定义的方法。型号代码如下: class Statement attr_accessor :opening_balance, :closing_balance def initialize(acct, year = nil, month = nil) @db = Database.instance @account = acct @year = year @month = month @mont

如何在模型中包含在助手中定义的方法。型号代码如下:

class Statement
  attr_accessor :opening_balance, :closing_balance 

  def initialize(acct, year = nil, month = nil)
    @db = Database.instance
    @account    = acct
    @year       = year
    @month      = month
    @month_name = Date::MONTHNAMES[@month]
  end

  def to_s
    "#{@account.number}-#{@month_name}-#{@year}"
  end

  def to_pdf
    title = @account.name
    subtitle = "Account Statement: #{@month_name} #{@year}"
    # StatementPDF.new(title, subtitle, transactions).render
    StatementPDF.new(title, subtitle, transactions).render
  end
end
我希望包括在我的助手中定义的transactions方法

def transactions(account_id, start, finish)

  response = get_call('/Accounts/Statements/' + account_id.to_s + '/' + start + '/' + finish)
  response = JSON.parse(response.body)

  @transactions = response.map do |txn| 
    Transaction.new(txn)
  end

  return @transactions

end

我正在研究以下解决方案(),但不知道如何将其与我的代码集成。

只需包含定义了
事务
方法的模块,如下所示:

class Statement
  include NameOfTransactionModule

  attr_accessor :opening_balance, :closing_balance

  def initialize(acct, year = nil, month = nil)
    @db = Database.instance
    @account    = acct
    @year       = year
    @month      = month
    @month_name = Date::MONTHNAMES[@month]
  end

  def to_s
    "#{@account.number}-#{@month_name}-#{@year}"
  end

  def to_pdf
    title = @account.name
    subtitle = "Account Statement: #{@month_name} #{@year}"
    # StatementPDF.new(title, subtitle, transactions).render
    StatementPDF.new(title, subtitle, transactions).render
  end
end

这将使
事务
方法作为
语句
类的对象的实例方法可用

您可以删除
return@transactions
。它是隐式返回的。@K M Rakibul Islam我尝试通过添加“包含事务”而不是“包含TransactionModule的名称”。我得到“语句:类的未定义局部变量或方法`transactions'”