簡體   English   中英

明確指定時,Rails模型外鍵不起作用

[英]Rails model foreign key not working when specifying explicitly

我有一個User模型和一個Message模型。 我的message表具有created_forcreated_by列,它們都是User表的外鍵。

我目前收到此錯誤消息:

#的undefined method created_for_id'

如何在不將列更改為created_for_idcreated_by_id情況下使其工作?

class User < ActiveRecord::Base

    has_one :message
end

class Message < ActiveRecord::Base

    #belongs_to :user
    belongs_to :created_by, :class_name => "User" # Basically tell rails that created_by is a FK to the users table
    belongs_to :created_for, :class_name => "User"  # Basically tell rails that created_for is a FK to the users table

    attr_accessible :created_by, :created_for, :message

end

您可以通過以下方式為belongs_to指定外鍵:

belongs_to :created_for, class_name: 'User', foreign_key: :created_for

我懷疑您會遇到一個問題,即關系名稱和外鍵屬性共享一個名稱。 這是belongs_to文檔,向下滾動到“選項”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM