首页 > 解决方案 > 如何处理带参数的 GET 请求

问题描述

我是 ruby​​ on rails 的新手,只需运行示例https://guides.rubyonrails.org/getting_started.html#installing-rails

我想修改代码以处理 GET 请求,如下所示:

bin/rails 路由文章 GET /articles(.:format) 文章#index

===app/controllers/articles_controller.rb

                 class ArticlesController < ApplicationController
                 def index
                 @articles = Article.all
                 end

=== app/views/articles/index.html.erb

         <% @articles.each do |article| %>

         <%= article.title %>
         <%= article.text %>
         <%= link_to 'Show', article_path(article) %>

         <% end %>

============routes.rb=====

           Rails.application.routes.draw do
           get 'welcome/index'

           resources :articles

            root 'welcome#index'
            end

标签: ruby-on-rails

解决方案


所以你可以做这样的事情,

def index
  @articles = Article.all
  @some_articles = @articles.select {|article| article.title == 'SOME STRING'}
end

那么你的观点你可以创建第二个循环

<div>
<% @articles.each do |article| %>
  <%= article.title %>
  <%= article.text %>
  <%= link_to 'Show', article_path(article) %>
<% end %>
</div>

<div>
<% @some_articles.each do |some_article| %>
   <%= some_article.title %>
   <%= some_article.text %>
   <%= link_to 'Show', article_path(some_article) %>
<% end %>
</div> 

我的意思是真的可能性是无限的(我可能也无法充分理解你的问题)。

您应该查看此文档以获取有关 Rails 中数据库查询的更多信息,我不知道您是否看过Ruby on Rails 教程,这是一个很好的起点,可能会对您有所帮助(不确定您是否已通读)


推荐阅读