ruby-on-rails - Ruby on rails 如何实现搜索栏功能以通过用户名查找其他用户?
问题描述
我想在我的 Rails 应用程序中实现搜索栏功能,通过用户名或全名查找其他用户,我正在为用户使用设计 gem,我没有任何 users_controllers 只是我有一个 user.rb 模型?任何帮助,非常感谢。
解决方案
首先,您必须创建一个控制器。要创建控制器,请运行以下命令。
rails g controller search
此命令将在您的 app/controller/search_controller.rb 中创建一个文件,转到此文件并添加以下代码。
def search_user
@get_user = User.where("username LIKE ? AND full_name LIKE ?","#{params[:username]}%", "#{params[:full_name]}%" )
puts @get_user
end
注意:-您必须记住的一件事是用户表列名和输入的名称应该是正确的。
现在下一步在 config/route.rb 文件中设置路由
get '/search_user', to: 'search/search_user'
下一步从 html.erb 文件调用search_user 。
<%= form_with url: "/search_user", method: :get do |form| %>
<%= form.text_field :username %>
<%= form.text_field :full_name %>
<%= form.submit "Search" %>
<% end %>
推荐阅读
- javascript - JavaScript 使用 for 循环创建新元素
- angular - 多张图片上传到 Spring Boot
- node.js - 一段时间后从云功能发送通知
- ios - 播放视频时使用avplayerkit问题黑屏来了
- mysql - 如何通过在同一列上运行 max() 来更新列?
- ruby-on-rails - 即使修改了 active_admin.rb 中的路径,注销路径在 activeadmin 中也不起作用
- ios - 如何使用 touchIDAuthenticationAllowableReuseDuration
- python - 将组中的第一个值复制到条件成立的所有行
- django - Django模型中的ManyToManyField
- c# - 如何接收和处理 AngularJS HTTP POST 到 C#?