如何更新分配给模型的所有模型?

How to update all models assigned to model?

TimeStamp 属于 Card,Card has_many TimeStamps,在我的情况下当用户检查 'assing_card' 那么如何通过 card.time_stamps 将所有其他 TimeStamps 分配给用户?我所有的尝试都在 TimeStampController 中的 if assing_card do 之后:

def update(conn, %{"time_stamp_id" => time_stamp_id, "user_id" => user_id, "assing_card" => assing_card} = params) do
  time_stamp = Repo.get!(TimeStamp, time_stamp_id) |> Repo.preload [:user, :card]

  time_stamp = %{time_stamp | user_id: String.to_integer(user_id)}

  if assing_card do
    time_stamps = time_stamp.card
      |> Repo.preload(:time_stamps)
      |> Map.get(:time_stamps)# here I have list with time_stamps ... How to |> Repo.update_all(set: [user_id: String.to_integer(user_id)]) ?
  ... 

而不是预加载 :time_stamps,更新 TimeStamp 行是否会直接完成您想要做的事情?

Ecto.Model.assoc(time_stamp.card, :time_stamps)
  |> Repo.update_all(set: [user_id: String.to_integer(user_id)])