Rails 4 Polymorphe Assoziationen und Bedenken

Ich versuche ein @ hinzuzufügEvaluation Modell zu meinemRails 4 app.

Ich habe ein Modell namens @ gemacevaluation.rb. Es hat

class Evaluation < ActiveRecord::Base

  belongs_to :evaluator, :polymorphic => true
  belongs_to :evaluatable, :polymorphic => true

Ich habe auch Bedenken für @ gemacevaluator undevaluatable wie

module Evaluator
    extend ActiveSupport::Concern

    included do 
        has_many :given_evaluations, as: :evaluator, dependent: :destroy, class_name: 'Evaluation'

    end
end

module Evaluatable
    extend ActiveSupport::Concern

    included do 
        has_many :received_evaluations, as: :evaluatable, dependent: :destroy, class_name: 'Evaluation'
    end
end

Ich habe jedes Anliegen in mein Benutzermodell aufgenommen:

class User < ActiveRecord::Base
   include Evaluator
   include Evaluatable

Auf meiner Show-Seite möchte ich die Bewertungen eines bestimmten Benutzers anzeigen (von anderen Benutzern erhalten - die Evaluatoren sind).

In meiner Show habe ich:

<% Evaluation.find(params[:id]).evaluations.order('created_at DESC').each do |eval| %>
                                <div id="portfolioFiltering" class="masonry-wrapper row">
                                        <%= eval.remark %>
                                        <%= eval.personal_score %>
                                        <small><%= eval.created_at %></small>

In meinem Bewertungsformular weiß ich nicht, wie ich den Empfänger der Bewertung benennen soll. Ich habe das Basisformular erstellt, aber ich weiß nicht, wie ich es an den Benutzer binden soll, der die Bewertung erhalten soll.

<%= simple_form_for(@evaluation) do |f| %>
  <%= f.error_notification %>

  <div class="form-inputs">
    <%= f.input :score, collection: 1..10, autofocus: true, :label => "How do you rate this experience (1 being did not meet expectations - 10 being met all expectations) ?" %>

    <%= f.input :remark, as: :text, :label => "Evaluate your project experience", :input_html => {:rows => 10}  %>

Meine Bewertungstabelle hat:

    t.integer  "user_id"
    t.integer  "evaluatable_id"
    t.string   "evaluatable_type"
    t.integer  "overall_score"
    t.integer  "project_score"
    t.integer  "personal_score"
    t.text     "remark"
    t.boolean  "work_again?"
    t.boolean  "continue_project?"
    t.datetime "created_at",        null: false
    t.datetime "updated_at",        null: false
  end

  add_index "evaluations", ["evaluatable_type", "evaluatable_id"], name: "index_evaluations_on_evaluatable_type_and_evaluatable_id", unique: true, using: :btree

FRAGE

Wie richte ich die Show-Seite so ein, dass die erhaltenen Bewertungen eines Benutzers angezeigt werden?

Wie passe ich das Formular so an, dass es eine Benutzer-ID als Person angibt, die die Bewertung erhalten soll?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage