簡體   English   中英

如何將 class 方法更改為 ruby 中的實例方法?

[英]how can I change class method to instance method in ruby?

現在,我面臨創建實例方法的問題。 項目在活動存儲中有多個圖像。

我創建了一個 class 方法,如下所示。

  def self.get_url(item)
      item.images.map do |image|
        Rails.application.routes.url_helpers.url_for(image)
      end
  end

這個 class 方法工作得很好。 但我想將其更改為實例方法,以便在沒有參數項的情況下使用其他地方。

所以我希望它是這樣的。

  def get_url
      item.images.map do |image|
        Rails.application.routes.url_helpers.url_for(image)
      end
  end

但我不能這樣做,因為沒有定義像 item 這樣的東西。

我想像這樣使用它。

item.get_url

如果你能幫助我,我將不勝感激。 謝謝你。

def self.get_url(item)中,我假設item是 class 的一個實例,所以如果你想創建一個實例方法,只需從item.images中刪除item部分:

def get_url
  images.map do |image|
    Rails.application.routes.url_helpers.url_for(image)
  end
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM