0

新手问题在这里。

我继承了一个 Rails 项目并被要求更改一些代码,但我在 Ruby 和 Rails 方面的经验很少(我是一个具有 PHP 背景开发人员的 Objective-c)

所以我必须拥有的第一件事是具有自动完成模式的文本字段。实际上我的代码有这个自动完成文本字段的代码:

注册控制器.rb

    def auto_complete_for_training_title
    puts "auto_complete_for_training_title"

    current_locale = params[:locale].to_s
    if current_locale == 'en' then
      if current_user.member then
        Locale.set current_user.member.written_language
      else
        Locale.set 'fr'
      end
    end

    @trainings = Training.find(:all, :conditions => ["((title LIKE ? OR fso_id LIKE ?) and is_private = 0", '%' + params[:training][:title] + '%', '%' + params[:training][:title] + '%'])
    puts @trainings.count
    render :partial => 'complete_ajax_own_function_training'
   end

在视图中,文本字段是这样创建的:

<% form_for :sortRegistration, { :url => { :action => 'index'} } do |f| %>

    <p><label><%= "Display registrations by training".t %> :</label>
    <%= text_field_with_auto_complete :training, :title, { :size => 50, :tabindex => 1 }, 
                    { :select => 'mon_titre',
                      :after_update_element => "function(element,val)
                       {
                         var nodes = val.select(['.value_title']) || [];
                         if(nodes.length>0)
                            {
                            $('sortRegistration_training_id').value = Element.collectTextNodes(nodes[0], 'value_title');
                            }
                        }"
                    }
    %></p>

<input id="sortRegistration_training_id" name="sortRegistration[training_id]" type="hidden" size="20" value="" /> 

<% end %>

如果我复制/粘贴代码,只有一个 textField 有效,我尝试更改一些参数但仍然没有更改某些内容。

PS 正如我所说,我是 RoR 的新手,我不知道您是否需要更多代码来帮助我,所以请随时提出更多问题,我将编辑我的问题

4

0 回答 0