我有在我的觀點一個與下面的代碼的問題:未定義的方法`電子郵件的零:NilClass
<% if [email protected]? %>
<% @admin.emails.each do |email| %>
<tr>
<td><%= email.email %></td>
</tr>
<% end %>
<% end %>
這將產生一個錯誤:
undefined method `emails' for nil:NilClass
Extracted source (around line #1):
1: <% @admin.emails.each do |email| %>
2: <tr>
3: <td><%= email.email %></td>
4: </tr>
管理控制器:
class AdminController < ApplicationController
end
def index
@emails = Email.all
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @emails }
end
end
電子郵件型號:
class Email < ActiveRecord::Base
attr_accessible :email
belongs_to :admin
email_regex = /\A[\w+\-.][email protected][a-z\d\-.]+\.[a-z]+\z/i
validates :email, :presence => true,
:length => { :maximum => 250 },
:format => { :with => email_regex },
:uniqueness => { :case_sensitive => false }
end
聯繫型號:
class Admin < ActiveRecord::Base
has_many :emails
end
任何想法可能是錯誤的?
你在哪裏定義'@ admin'? – 2012-04-28 04:00:12
廢話我不是。我試圖在管理員視圖中顯示電子郵件列表。管理員目前只是一個靜態頁面。我應該如何定義? – maxm 2012-04-28 04:05:04
您正在定義'@ emails',爲什麼不使用'@ admin.emails'來代替'@ admin.emails'? – 2012-04-28 04:16:02