【问题标题】:Rails why autocomplete association is not workingRails 为什么自动完成关联不起作用
【发布时间】:2014-04-28 04:43:27
【问题描述】:

我在工作和公司之间建立了关联,我想实现自动完成功能 在我的 jobs.js.coffe 文件中我有这个代码

jQuery ->
  $('#job_company_name').autocomplete
    source: $('#job_company_name').data('autocomplete-source')

这是我的工作表单视图

<div class="form-group">
  <%= f.label :company_name %><br />
  <%= f.text_field :company_name, data: {autocomplete_source: companies_path} %>
</div> 
<div class="form-group">
  <%= f.label :job_title, "Intitulé du poste", class: "jobs-newtitles" %><br>
  <%= f.text_field :job_title, class: "form-control form-newjob"  %>
</div>

这是我的工作模式

class Job < ActiveRecord::Base

    belongs_to :company

    extend FriendlyId
    friendly_id :job_title, use: :slugged


      def company_name
        company.try(:name)
      end

      def company_name=(name)
        self.company = Company.find_or_create_by_name(name) if name.present?
      end

end

我也将此添加到我的公司控制器

  def autocomplete
    @companies = Company.order(:name).where("name like ?", "%#{params[:term]}%")

    respond_to do |format|
      format.html
      format.json { render json: @companies.map(&:name) }
    end
  end

这是我的路线

  concern :autocompletable do
    get 'autocomplete', on: :collection
  end

resources :companies, concerns: :autocompletable

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-4 autocomplete associations


    【解决方案1】:

    您指定了自动完成网址“companies_path”,而您的自动完成操作是“自动完成”。

    通过以下检查检查正确的自动完成路径:

      $ rake routes | grep autocomplete
    

    我假设,您需要将 autocomplete_source 修改为如下内容:

      <%= f.text_field :company_name, data: {autocomplete_source: companies_autocomplete_path} %>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-29
      • 2023-03-15
      相关资源
      最近更新 更多