不幸的是,我們的Ruby開發者是外地來的,我們有一個需要一種變通方法修復,直到他可以返回的問題。我一直負責找到它。Ruby on Rails的 - 未定義的方法 - Rails的3.2.13
我試圖進入我們的數據庫視圖,hr_accounts_view,包含我們需要整合到我們現有的頁面,它依賴於一個完全不同的表所需的數據之一。所有我們試圖拉入的是我們認爲的狀態列,所以我盡我所能保持模型/控制器/視圖儘可能簡單。
我hr_account_view型號:
class HrAccountView < ActiveRecord::Base
self.table_name = 'hr_accounts_view'
include Savable
# belongs to :hr_account
belongs to :employee, foreign_key: :id
validates :Status, presence: true
end
Hr_Account_Views控制器:
class HrAccountViewsController < ApplicationController
load_and_authorize_resource
def show
@HrAccountView.Status = HrAccountView.Status
end
private
end
我也分開的觀點出來到它自己的文件夾視圖中,企圖使其與關聯新的控制器。我們在我們的常規演示頁面中呈現此頁面。
頁從我們的節目,hraccountsview/_apptment.html.erb被稱爲:
<table>
<tr>
<td>
Status<br />
<%= display_text_field @HrAccountView.Status %>
</td>
</tr>
</table>
我已經經歷了讀一噸的帖子引用這個問題,它看起來像這個問題將是一個控制器中的聲明缺失,但我嘗試了各種組合。不幸的是,我真正在Ruby和Rails中做的最多的是頁面的小改動和一些搜索功能,但從來沒有任何東西需要添加額外的表格/視圖。
根據錯誤信息,我有一個未定義的方法「狀態」爲nill:NillClass,它正在發生,就會向所呈現我的網頁的第5行。如果我投入救援無,頁面將至少顯示標題,但不顯示數據。正在預覽的記錄目前具有「狀態」列的已填充記錄。這導致我相信模型而不是控制器存在問題,但在這一點上,我一直在旋轉我的車輪,試圖找出丟失連接的位置。
是否有人在那裏我失去了連接的想法?
你的幫助是非常感謝!
Rails的3.2.13版本 數據庫版本:SQL 2012
這裏有一些案例交換。 \ @hraccountview和\ @HrAccountView應該是同一件事情嗎? –
這是新的代碼?還是你想修復現有的代碼? – zetetic
他們應該是同一件事。在我發佈之前我甚至沒有注意到。 – Live2Learn