0

我正在使用 rails 2.3.4、rubygems 1.8.24、mac os x lion 和 ruby​​ 1.9.3

我正在尝试将 xml 呈现给一个名为 invoice 的对象。现在,我将发票与 invoice_detail 相关联,所以在我的渲染 :xml 中我写道:

format.xml  { render :xml => @invoice.to_xml(:include => :invoice_detail) }

但发生错误:ActiveRecord::StatementInvalid Invalid column name 'invoice_id'

我的数据库中没有 invoice_id 列,现在我希望 rails 能够理解这一点。我希望它查看 inventoryDocId 列,而不是查找不存在的 invoice_id 列。我怎么做?非常感谢你。

4

1 回答 1

1

创建模型 invoice_detail 时,您必须指定外键列:

class InvoiceDetail < ActiveRecord::Base
  belongs_to :invoice, :foreign_key => "inventoryDocId"
end

您在这里有 belongs_to 选项:http: //api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#method-i-belongs_to

于 2012-05-22T09:59:05.083 回答