- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个名为 Accounting::Invoice
的命名空间模型
我还有一个模型叫 Contact
安 Accounting::Invoice
通过另一个名为 Contactable
的模型有很多联系人-- 这是在发票被拆分为多个联系人的情况下。
但是由于某种原因,我无法获得 has_many through
协会工作。
我可以让它朝一个方向工作,例如:Contact.first.accounting_invoices
,但反过来,例如:Accounting::Invoices.first.contacts
给我一个错误,看起来像:SQLite3::SQLException: no such column: contactables.invoice_id...
有任何想法吗?我不确定 ActiveRecord 的来源 contactabes.invoice_id
.我已经明确定义了我的表名和类名以使用 accounting_invoices
表和Accounting::Invoice
恭敬地上课。
最佳答案
您可以使用 :foreign_key => 'accounting_invoice_id
选项告诉 rails 使用哪个字段。查看 has_many
的文档有关更多信息(http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#method-i-has_many)。
相关部分是:
:foreign_key
Specify the foreign key used for the association. By default this is guessed to be the name of this class in lower-case and “_id” suffixed. So a Person class that makes a has_many association will use “person_id” as the default :foreign_key.
关于ruby-on-rails - 如何在 Rails 中通过命名空间模型使用 has_many?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14105118/
我是一名优秀的程序员,十分优秀!