簡體   English   中英

如何在Ruby on Rails中找到屬於類別的文章

[英]How to find articles which belongs to category in Ruby on rails

我只想顯示屬於該類別的文章。 例如:用戶單擊類別,他將獲得該類別中所有文章的列表。

文章模型

class Article
  include Mongoid::Document
  include Mongoid::Timestamps

  field :title, type: String
  field :content, type: String

  belongs_to :user
  #kategorie
  belongs_to :article_category

物品控制者

  class ArticlesController < ApplicationController
    def article
    @article = Article.order_by(created_at: 'desc').page params[:page]
  end

  def view_article
    @article = Article.find(params[:id])
  end
end

文章類別模型

class ArticleCategory
  include Mongoid::Document
  include Mongoid::Timestamps


  field :name, type: String

  has_many :articles


end

路線

  resources :article_categories do
  resources :articles, shallow: true
  end

文章類別控制器

class ArticleCategoriesController < ApplicationController

  def index
   @article = Article.find
  end

    end

我在文章視圖中顯示所有文章,而在articles_categories視圖中,我想顯示特定的帖子。 因此,控件的外觀應該是什么樣子(我現在正在談論ArticleCategoriesController。)我嘗試使用Article.find_by(name:'JS'),但它不起作用。 我正在尋找幫助:)

你可以這樣做:

class ArticleCategoriesController < ApplicationController
    def index
        @category = ArticleCategory.find(params[:id])
        @articles = @category.articles
    end
end

因為您的ArticleCategory模型has_many Articles ,所以可以執行@categoy.articles

更新

現在,要在視圖上顯示文章,您必須像這樣交互te @articles集合(數組):

<% @articles.each do |article| %>
    <%= article.title %><br>
    <%= article.body %><br><br>
<% end %>

更新2

您可以執行以下操作以創建類別的鏈接:

<%= link_to category.name, category %>

忠告:

我認為您有一個基本問題。 我建議您閱讀以下內容:

會給你打好基礎

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM