1

我要在这里拔头发。

我有以下两个表:

databases
---------
id
user_id
driver
host
port
database_name
username_encryption_id
password_encryption_id

encryptions
-----------
id
encryption
salt

使用 Ruby on Rails ActiveRecord 关联,我希望能够做到这一点

database = Database.find_by_id(database_id)
encryption = database.username_encryption

我很确定这是一个 has_one 关系(数据库有一个用户名加密)。这些都不起作用:

has_one :password_encryption, :class_name => "Encryption", :foreign_key => :password_encryption_id, :inverse_of => :encryption
has_one :username_encryption, :inverse_of => :database

我如何让这个工作?我要死在这里了。

4

1 回答 1

2

这看起来像一个belongs_to关联,因为databaseusername_encryption_id

class UsernameEncryption < Encryption
  has_one :database
end

class Database
  belongs_to :username_encryption
end
于 2011-06-05T20:06:49.053 回答