У меня возникают проблемы с параметром params.require(). Allow(). У меня есть модель User от разработки и групповая модель, которая представляет класс (как в академическом классе). Когда пользователь находится в представлении индекса групп, я хочу, чтобы они могли нажимать join и становиться частью этой группы.параметр отсутствует или значение пустое Ошибка
<%= form_for @student, :url => students_path(@student), method: :post do %>
<%= hidden_field :student_id, :value => current_user.id %>
<%= hidden_field :course_id, :value => group.id %>
<%= submit_tag "+ Join", :class => "btn btn-primary pull-right join-button" %>
<% end %>
Мое мышление было я бы передать идентификатор текущих пользователей, а также идентификатор группы, что они щелкают присоединиться к, как скрытых значений, так что будет просто кнопка присоединиться.
Моя группа индексный метод контроллеров выглядит следующим образом
def index
@groups = Group.all
@student = Student.new
end
My Student Controller выглядит следующим образом:
class StudentsController < ApplicationController
before_action :set_student, only: [:show, :edit, :update, :destroy]
def index
#@students = Student.all
@students = Student.where(:student_id => current_user.id)
#respond_with(@students)
end
def show
#respond_with(@student)
@students = Student.find(params[:id])
end
def new
@student = Student.new
#respond_with(@student)
end
def edit
end
def create
@student = Student.new(student_params)
@student.save
#respond_with(@student)
end
def update
@student.update(student_params)
#respond_with(@student)
end
def destroy
@student.destroy
#respond_with(@student)
end
private
def set_student
@student = Student.find(params[:id])
end
def student_params
params.require(:student).permit(:course_id, :student_id)
end
end
Всякий раз, когда я пытаюсь отправить форму (ака нажмите на кнопку присоединиться) я получаю ошибка:
param is missing or the value is empty: student
Я также получаю эту информацию, которая правильна в отношении учащегося и ID группы
Request
Parameters:
{"authenticity_token"=>"/bJYZBGr6lfAzb9mYnvRfMZII+QS8iskd0MRuHh+RnE=",
"course_id"=>"10",
"student_id"=>"4"}
Это также вставляет в базу данных, но student_id и course_id равны нулю. Я предполагаю, что это имеет какое-то отношение к сильным параметрам, но я не уверен, что я делаю неправильно.
действие которого перенаправляет при нажатии на кнопке join' – anusha