簡體   English   中英

Rails虛擬屬性未更新

[英]Rails Virtual Attributes Not Updating

我有一個鏈接到dbpedia文章的特定主題的“標簽”模型。 我想創建一個虛擬屬性,它將使用此dbpedia URI生成一個Wikipedia URI。 該類大致如下所示:

class Tag < ActiveRecord::Base

  # Validation
  validates_presence_of :dbpedia_uri, :label

  #Virtual Attribute
  def wikipedia_uri
    "#{dbpedia_uri}".gsub("dbpedia.org/resource", "wikipedia.org/wiki")    
  end

end

當我進入控制台並嘗試檢查Tag.all [1] .wikipedia_uri時,出現以下錯誤:

NoMethodError: undefined method `wikipedia_uri' for #<Tag:0xa0c79ac>

此外,我還有第二個具有有效工作的虛擬屬性的模型(地圖),但是當我更改它們時,我仍然可以得到舊值。 因此,當代碼為:

 def thumbnail_uri
    "#{map_base_uri}/thumbnails/#{identifier}.jpg"
  end

Map.all [1] .thumbnail_uri返回的內容類似於:“ http://WEBSITE/maps/thumbnails/g3201b.ct002662.jpg”

當我將代碼更改為:

def thumbnail_uri
   "test"
end

我仍然得到輸出:“ http://WEBSITE/maps/thumbnails/g3201b.ct002662.jpg”

我曾嘗試重新加載Rails Console,但它似乎仍未更新虛擬屬性。 有什么想法可能導致此問題?

找出問題。 我愚蠢地在一個目錄中運行控制台以獲取一組重復的文件備份,因此備份中的所有方法和變量都可以在控制台中使用,但是對當前代碼的更改並沒有影響它

暫無
暫無

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

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