Я пытаюсь реализовать функцию перетаскивания, предоставляемую gem rankedmodel, похоже, что-то не так, потому что каждый раз, когда я нажимаю на ссылку, шоу mwthod выдает ошибку
Can 't Найти оценку с id = "row_order_id",
Примечание: элементы уже в упорядоченном списке, мне просто нужно добавить функцию перетаскивания.
item.rb
class Item < ApplicationRecord
belongs_to :assessment
include RankedModel
ranks :row_order, with_same: :assessment_id
validates :title, presence: true
end
rout.rb
resources :assessments do
post :update_row_order, on: :collection
end
Assements_controller
class AssessmentsController < ApplicationController
# Display all assessments
def index
@assessments = current_user.visible_assessments
end
def show
@assessment = Assessment.find(params[:id])
@items = @assessment.items.rank(:row_order).all
end
def create
@assessment = Assessment.new(assessment_params)
if @assessment.save
render json: @assessment, status: :created
else
render json: @assessment.errors, status: :unprocessable_entity
end
end
def update_row_order
@item = Item.find(params[:item])
@item.row_order_position = params[:item]
@item.save
render nothing: true
end
private
def assessment_params
params.require(:assessment).permit(:name)
end
end
javascript
$.ajax({
type: 'POST',
url: '/assessments/update_row_order',
dataType: 'json',
data: { item: { row_order_position: 0 } }
});