我是 Rails 的新手,并试图准确了解如何进行关联,以及我是否正确地完成了它。我已经阅读了有关关联的 Rails 指南并搜索了网络并找到了许多资源,但我不确定。
你可以在这里看到我的项目:majorfinder.com 在我的应用程序上会有专业、学校和职业。我希望能够为每个添加评论。因为我刚刚开始,所以我刚开始为专业添加评论。
以下是我的联想:
模型/review.rb
belongs_to :user
has_and_belongs_to_many :majors
模型/用户.rb
has_many :reviews
模型/major.rb
has_and_belongs_to_many :reviews
我的第一个问题是,这看起来是创建关联的好方法吗?
我了解如何在专业控制器中进行简单关联:
@reviews = Review.includes(:user)
这样我就可以向我的主要控制人展示评论:
<div class="row">
<% @reviews.each do |review| %>
<div>
<h3><%= link_to review.review,
:controller => "reviews", :action => "show", :id => review.id %></h3>
<small>Posted on <%= review.created_at %> by
<a href="#"><%= review.user.profile_name %></a></small>
</div>
<% end %>
</div>
但我不确定如何将其与我正在研究的特定专业联系起来。
我的评论数据库架构有 review(text)、user_id(integer) 和 major_id(integer)。
最后一个问题是如何在主要控制器显示页面中发布与特定专业相关联的评论?