【发布时间】:2015-10-08 11:51:19
【问题描述】:
我是 Rails 新手,非常感谢您的帮助和建议。
- 我目前正在使用 gem
ransack - 在我的架构中,我有一个名为
adverts的表,其中包含title和content列 - 我正在尝试通过链接创建带有 ransack 的搜索
- 我有一个名为“相似工作”的链接 [
<%= link_to 'similar jobs', search_adverts_path(q: {advert_title_eq: @advert.title}), class: "fa fa-plus-square" %>] - 当前在我的应用程序中,当用户单击
similar jobs以获取标题为risk analyst的广告时,它会显示具有确切广告标题“风险分析师”的搜索结果,但我希望显示包含“ risk' & 'analyst' - 例如,'business Analyst' 'risk Analyst' 'financial Analyst' 等应显示在搜索结果列表中,但仅显示 'risk Analyst'
我想做的是:
- 当用户查看广告(例如:风险分析师)并点击链接“类似职位”时,搜索应显示标题包含“风险”和“分析师”的广告
adverts_controller.rb
在我的广告控制器中,我有以下操作:
def search
@userj = current_userj
if params[:q].present? and params[:q][:advert_title_eq].present?
params[:q][:title_cont] = params[:q][:advert_title_eq]
end
@search = Advert.search(params[:q])
@adverts = @search.result(distinct: true)
@active_adverts = @adverts.where(['appdeadline >= ?', Time.zone.today]) #displays adverts with deadline > or = to current date
@active_adverts_count = @active_adverts.count
end
视图/广告/show.html.erb
<%= link_to 'similar jobs', search_adverts_path(q: {advert_title_eq: @advert.title}), class: "fa fa-plus-square" %>
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-4