我在第一次Rails应用程序中取得了不错的进展,很多来自Stack Overflow上伟大社区的帮助。Rails显示公司名称而不是公司ID
我有一个具有以下车型基本应用:
加濑 人 公司 党
我在下面的方式相关联了:
class Kase
belongs_to :company # foreign key: company_id
has_and_belongs_to_many :people # foreign key in join table
class Person
has_and_belongs_to_many :kases # foreign key in join table
class Company
has_many :kases
has_many :people
class Party
has_and_belongs_to_many :people
has_and_belongs_to_many :companies
目前,如果我创建了一家公司,然后创建一个新案例(kase),我可以从下拉列表中选择我想要的公司(来自公司数据库),然后在展示视图中选择我可以 - 我可以在公司成功分配到人,但在放映视图
<li>Client Company: <span><%=h @kase.company.companyname %></span></li>
但是,如果我添加使用相同的方法一个新的人:通过使用此代码输出所选公司的情况名称
<li>Person Company: <span><%=h @person.company.company_id %></span></li>
如果我改变了上面:使用此代码仅输出公司ID号
<li>Person Company: <span><%=h @person.company.companyname %></span></li>
我得到以下错误:
undefined method `company' for #<Person:0x105dc4938>
所以看起来我可以打电话给公司的ID,但没有其他公司的数据库,任何想法,我哪里会出错?
感谢,
丹尼
+1哇!正义,你键入这么长,仍然打我一秒;-) – ohho 2010-04-28 11:05:31
唯一不起作用的是,当我创建一个新的人,并从下拉选择公司我得到这个错误: 未定义的局部变量或方法'公司名'为#<人:0x105e66cd8> 编辑:没关系 - 错误留在代码从今天早些时候!谢谢大家! – dannymcc 2010-04-28 11:13:25
我现在已经修复了错误消息,但是如果我使用以下内容: <%= h @ kase.person.personname%> 它引发异常错误。这是否应该发生? – dannymcc 2010-04-28 12:06:21