Что вы можете сделать, это перебрать все элементы с помощью Javascript и отправить массив идентификаторов в действие Rails, используя AJAX (как в примере, приведенном Ману Мора).Параметры будут выглядеть примерно так:
project_ids: 1,3,5,2,4
id: 1
Тогда в вашем действии контроллера вы можете сделать следующее:
@user = User.find(params[:id])
@user.update_attributes(:project_ids => params[:project_ids].split(","))
Я не знаю, как отправить параметры таким образомчто это Массив автоматически, поэтому я использую split
.Я не знаю, будет ли порядок в порядке при использовании HABTM.Если нет, вы должны использовать has_many :through
со столбцом 'order' или 'position'.Способ, который я показал вам, тогда не сработает, потому что вам также нужно установить столбец заказа.
Надеюсь, это сработает.:)