Как просмотреть информацию о пользователях с одинаковыми именами в рельсах? - PullRequest
0 голосов
/ 15 октября 2018

У меня есть пользовательская модель с такими деталями, как адрес электронной почты, имя, адрес, имя пользователя и т. Д. Я хочу создать свое приложение таким образом, чтобы отображались все отдельные имена, и когда вы нажимаете кнопку «Показать» рядом с этим именем,будут отображены все детали пользователей, имеющих это конкретное имя.Я новичок в рельсах, поэтому мне нужно несколько предложений.

Вот мой код контроллера и код просмотра.Появляются уникальные имена, но когда я нажимаю на ссылку показать рядом с именем, ничего не появляется.

tasks_controller.rb

    class TasksController < ApplicationController
      def index
        @names = User.distinct.pluck(:name)
      end
      def show
        @users = User.where(name: params[:name])
      end
    end

index.html.erb

    <table>
      <thead>
        <th>Name</th>
        <th colspan="1"></th>
      </thead>
      <tbody>
        <% @names.each do |n| %>
        <tr>
          <td><%= n %></td>
          <td><%= link_to 'Show', task_path(n) %></td>
        </tr>
        <% end %> 
      </tbody>
    </table>

show.html.erb

    <table>
      <thead>
        <th>Email-id</th>
        <th>DOB</th>
      </thead>
      <tbody>
        <% @users.each do |u| %>
        <tr>
          <td><%= u.email%></td>
          <td><%= u.dob%></td>
        </tr>
        <% end %> 
      </tbody>
    </table>

1 Ответ

0 голосов
/ 15 октября 2018

В методе index вы извлекаете все уникальные имена

def index
  @names = User.distinct.pluck(:name)
end

теперь показывает метод, вы передаете имя в качестве параметра

def show
  @users = User.where(name: params[:name])
end

цикл через все записи напоказать страницу, чтобы увидеть все записи пользователей с одинаковыми именами, и на странице индекса пройтись по всем именам и добавить кнопку или привязку, чтобы открыть страницу показа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...