我必須在這裏丟失一些非常明顯的東西,但目前我不能看到樹木,這感覺很像一個noob問題! :)訪問控制器塊中的模型變量
我有一個模型HousePrice,有兩個屬性,郵政編碼和價格。
郵編目前是一個字符串,包括一些地址在開頭,然後是一個或多個郵政編碼。例如..
postcodes = "High Street, Tetsworth, Thame, OX9 OX9 7AB OX9 7AD OX9 7AE OX9 7AS OX9 7AT OX9 7BS OX9 7BZ"
我有一個紅寶石腳本,剝離我不想要的文本,並返回僅作爲數組的郵編。它可能並不是最好的,但是它完成了這項工作!
我在我的HousePrices控制器中有一個自定義def,它從索引頁上的鏈接調用。但是,我不斷收到
undefined method `slice!' for nil:NilClass
我很困惑!
以下是我與嘗試它...
def second_distance_run
HousePrice.all.each do |pca|
@postc = []
@array = pca.split(',').to_a
@srt = @array[3]
@srt.slice!(0,5)
aa = @srt.split(' ').to_a
aa.each_slice(2) do |elem|
@postc << (elem[0].to_s) + (elem[1].to_s)
end
end
在CONSOL它的工作原理,如果你給它的字符串,但如果它得到它從數據庫中。我知道我錯過了一些愚蠢的東西,但我很掙扎!
在此先感謝!
好吧,'logger.info pca'會告訴你你實際上有什麼。很可能你會得到一個空字符串或一個字符串,分割後的部分少於4個。 –
btw:分割後的'.to_a'是無用的,因爲'split'無論如何返回一個數組。 –
你是怎麼給'pca'打'split'的?它應該是'HousePrice'模型的一個實例,而不是一個字符串 - 您是否在模型上定義了拆分(或者將它委託給某個位置)?最有可能你想'pca.postcodes.split ...'而不是 – BroiSatse