Как сменить владельца модели на Ruby в рельсах? - PullRequest
0 голосов
/ 09 октября 2018

Я использую Ruby на рельсах и монгоидах.У меня есть две модели User.rb и Project.rb.Если я хочу сменить владельца модели проекта, как мне это сделать?

User.rb

class User
  include Mongoid::Document

  field :name, type: String
  has_many :projects, dependent: :destroy
end

Project.rb

class Project
  include Mongoid::Document

  field :title, type: String

  validates :user_id, presence: true

  belongs_to :user, touch: true
end

в form.htmlУ меня есть режим выбора

  <div class="form-group">
    <%= f.collection_select :user_id, User.all, :id, :name, class: 'form-control' %>
  </div>

Ответы [ 2 ]

0 голосов
/ 10 октября 2018

я давно не использовал mongoid, но вы можете попробовать выполнить эти команды на вашем rails console:

project.user = owner_object;
project.save

ИЛИ

project.user_id = owner_id
project.save
0 голосов
/ 09 октября 2018

Вы должны иметь возможность просто назначить его для пользовательского поля и затем сохранить его, чтобы сохранить его в базе данных

project = Project.find(project_id)
new_owner = User.find(new_owner_id)
project.user = new_owner
project.save
...