Ich habe einen Agenten und ein Agent_review-Modell und ich versuche, eine Seite zu erstellen, auf der alle Bewertungen auf derselben Seite verfügbar sind. Ich habe ein Problem mit dem Agenten, der überprüft wird, und dem Namen des Rezensenten.Kein Methodenfehler - Name von Tabelle erhalten
ERB:
<div class="mega-container">
<%= render 'matrix/listings/matrix_navigation' %>
<div class="standard-page-header">
<h1>Agent Reviews</h1><br>
<hr>
</div>
<div class="text-center">
<div class="container feedback-index">
<% @agent_reviews.each do |agent_review| %>
<div class="row feedback-strip">
<h3>Agent Name: <%= agent_review.agent.name %></h3>
<p>Review: <%= agent_review.comment %></p>
<p>Star Rating: <%= agent_review.rating %> of 5</p>
<p>Reviewer: <%= agent_review.reviewer.name %></p>
<p>Submitted: <%= agent_review.created_at.strftime('%D @ %l:%M%p') %></p>
</div>
<% end %>
</div>
</div>
</div>
Schema:
create_table "agent_reviews", force: :cascade do |t|
t.integer "agent_id"
t.integer "reviewer_id"
t.text "comment"
t.integer "rating"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
Controller:
def all_reviews
@agent_reviews = AgentReview.all
end
Modelle:
class Agent < ActiveRecord::Base
has_many :agent_reviews
end
class AgentReview < ActiveRecord::Base
belongs_to :agent, foreign_key: 'reviewer_id'
end