0
하나 (피드백) 한 2 키레일 : Sqlite : 두 개의 외래 키로 만 날짜를 만드는 방법? 내 데이터베이스 테이블의
class CreateFeedbacks < ActiveRecord::Migration
def change
create_table :feedbacks do |t|
t.string :strengths
t.string :weaknesses
t.string :recommendations
t.string :rating
t.integer :user_id
t.integer :subject_id
t.timestamps
end
end
end
에만 코드를 추가 한 subject.How에 대해 하나 개의 의견이 한 사용자에 내가 원하는
def create
@feedback = Feedback.new(params[:feedback])
@feedback.user_id=current_user.id
if @feedback.save
flash[:success] = "Welcome #{current_user.name}!"
redirect_to @feedback
else
render 'new'
end
끝
class FeedbacksController < ApplicationController
def new
@feedback = Feedback.new
#@user = Subject.find_all_by_teacher_id(current_user.id)
user_subject
end
def create
@feedback = Feedback.new(params[:feedback])
@feedback.user_id=current_user.id
if @feedback.save
flash[:success] = "Welcome #{current_user.name}!"
redirect_to @feedback
else
render 'new'
end
end
def show
@feedback_user_all= Feedback.find_all_by_user_id(current_user.id)
end
def user_subject
@course = Course.find(current_user.course_id)
@subject = @course.subjects
end
end
어떻게 내 컨트롤러로 수행하는 방법을 나는 피드백이 사용자에게 말하고 싶어 생성되어 "새"페이지로 돌아갑니다 – user3000770
그게 정확히 당신 질문에있는 것입니다. 두 개의 피드백이 동일한 user_id와 subject_id를 가지면'if @ feedback.save'는 false를 반환 할 것이고, 그 경우에 '새로운'페이지를 렌더링 할 것입니다. –
, 그것은 말한다 : 정의되지 않은 메서드 전무에 대한 '지도' 9 : <% = f.collection_select (: subject_id, @subject : 아이디, 이름 (라인 # 9 정도) NilClass 추출 소스) %> – user3000770