0
我必须让它过于复杂,但我很难将我的头围绕一个简单的问题。Ecto更新关联has_one belongs_to
说我有两个表,global_users
和local_users
:
create table(:global_users, primary_key: false) do
add :id, :integer, primary_key: true
add :local_user_id, references(:local_users)
...
end
create table(:local_users, primary_key: false) do
add :id, :integer, primary_key: true
add :global_user_id, references(:global_users)
...
end
@primary_key {:id, :integer, autogenerate: false}
schema "global_users" do
has_one :local_user, Local.User
...
end
@primary_key {:id, :integer, autogenerate: false}
schema "local_users" do
belongs_to :global_user, Global.User
...
end
编程,我将首先创建一个global_user,然后创建一个local_user,然后我需要两个事后关联。
例如,鉴于现有的有效global_user
和现有的有效local_user
,我将如何连结现有的local_user
到现有global_user
?
一旦我添加has_one
,我不再有权访问外部密钥本身(例如,没有%Global.User{:local_user_id}
更新,只有一个关联!)。
同样,我知道这看起来很简单,而且我确信我只是错过了一些明显的东西。
在此先感谢!