【发布时间】:2015-04-26 17:23:40
【问题描述】:
好的,伙计们,我知道过去几天我遇到了很多初学者问题,因为我的第一个 ROR 应用程序出现了(本周三测试截止日期)。一切都很好,除了我在测试我的应用程序时遇到的一个小问题。
该应用程序适用于赌场,以便他们处理背景调查。我有一个申请人模型,申请人有 first_name last_name 属性。我希望能够搜索申请人的索引页面,但是每当我在搜索中输入姓名时,浏览器都会返回所有申请人的新页面,而不仅仅是我正在寻找的那个......
我整个上午都在网上搜寻解决方案,但我没有运气。
这是我的申请者模型
class Applicant < ActiveRecord::Base
validates_presence_of :first_name, :last_name, :social, :dob
validates :email, format: { with: /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\z/i, on: :create }
validates :social, format: {with: /^(\d{3}-?\d{2}-?\d{4}|XXX-XX-XXXX)$/i, :multiline => true, on: :create}
def self.search(search)
if search
@applicants = Applicant.find(:all, :conditions => ['first_name LIKE ?', "%#{search}%"])
else
@applicants = Applicant.all
end
end
end
(抱歉缩进效果不佳,在我的文件中看起来更好) 我的控制器是这样的
def index
@applicants = Applicant.search(params[:search])
end
我的观点看起来像
<section>
<%= form_tag("/applicants", method: "get") do %>
<%= label_tag(:applicants, "Search for:") %>
<%= text_field_tag(:q) %>
<br>
<%= submit_tag("Search") %>
<% end %>
<br>
</section>
【问题讨论】:
-
你用的是Rails 4吗?能贴一下参数日志吗?
标签: ruby-on-rails ruby-on-rails-4 search