Trilhos 4 Associações e preocupações polimórficas

Estou tentando adicionar umEvaluation modelo para o meuRails 4 aplicativo.

Eu fiz um modelo chamadoevaluation.rb. Tem:

class Evaluation < ActiveRecord::Base

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

Eu também fiz preocupações porevaluator eevaluatable Como:

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

Eu incluí cada preocupação no meu modelo de usuário:

class User < ActiveRecord::Base
   include Evaluator
   include Evaluatable

Na minha página do programa, quero mostrar as avaliações de um usuário específico (recebidas de outros usuários, que são avaliadores).

No meu programa, eu tenho:

<% 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>

No meu formulário de avaliações, não tenho certeza de como designar o destinatário da avaliação. Fiz o formulário básico, mas não sei ao certo como vinculá-lo ao usuário que deve receber a avaliação.

<%= 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}  %>

Minha tabela de avaliações possui:

    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

QUESTÕES

Como configuro a página do programa para mostrar as avaliações de um usuário recebidas?

Como adapto o formulário para que ele especifique um ID de usuário como a pessoa que deve receber a avaliação?

questionAnswers(1)

yourAnswerToTheQuestion