Панель поиска Ruby on Rails для пользователей Devise - PullRequest
0 голосов
/ 09 декабря 2018

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

team.rb

class Team < ApplicationRecord

  devise :database_authenticatable, :registerable,
     :recoverable, :rememberable, :validatable, :confirmable

  def self.search(user_name)
    if user_name
      user_name.downcase!
      where('LOWER(name) LIKE ?', "%#{user_name}%")
    else
      all
    end
  end

end

rout.rb

devise_for :teams, path: 'teams' , controllers: { sessions: "teams/sessions", confirmations: 'teams/confirmations', registrations: 'teams/registrations'} 

controller.rb

def team_search
  @users = Team.search(params[:search])      
end

просмотр

<%= form_tag teams_path, :method => 'get' do %>
   <p>
    <%= text_field_tag :search, params[:search] %>
    <%= submit_tag "Search", :name => nil %>
  </p>
<% end %>

1 Ответ

0 голосов
/ 09 декабря 2018

Вы можете использовать отдельный контроллер и путь:

class TeamsController
  def search
    # ...
  end
end

# routes.rb
resources :team do
  collection do 
    get :search
  end 
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...