6

rails3-jquery-autocomplete gem を active_admin で使用すると問題が発生します

現在formtastic 2に依存している最新バージョンのactive_admin (gitから)を使用しており、 rails3-jquery-autocompleteの1.04を使用しています

undefined local variable or method `autocomplete_artist_name_records_path' for #<ActiveAdmin::DSL:0x007fde797140d0>

私が提供しているURLルートが気に入らないのですが、何が間違っているのでしょうか?

宝石

gem 'activeadmin', :git => 'git://github.com/gregbell/active_admin.git'
gem 'rails3-jquery-autocomplete', '~> 1.0.4'

records.rb (active_admin)

ActiveAdmin.register Record do
  #...
  controller do
    autocomplete :artist, :name#, :full => true
  end

  form do |f|
    f.input :artist_name, :as => :autocomplete, :url => autocomplete_artist_name_records_path
  end
end

ルート.rb

  resources :records do
    get :autocomplete_artist_name, :on => :collection
  end

どこかで見つけたこの修正も試しましたが、エラーを含めて何も変わりませんでした

https://gist.github.com/1137340

4

2 に答える 2

3
  • adminに名前空間を追加routes.rb

    # Put this line above ActiveAdmin.routes.  Otherwise, you may get this error
    # ActiveRecord::RecordNotFound (Couldn't find Record with id=autocomplete_artist_name):
    namespace :admin do
      resources :records do
        get :autocomplete_artist_name, :on => :collection
      end
    end
    
    ActiveAdmin.routes(self)
    
  • これらの行を追加しましたapp/assets/javascript/active_admin.js

    //= require jquery
    //= require jquery_ujs
    //= require jquery-ui
    //= require autocomplete-rails
    
  • ではapp/admin/records.rb、私の回避策は、パス メソッドの代わりに文字列で url を使用することです

    form do |f|
      f.input :artist_name, :as => :autocomplete, :url => '/admin/records/autocomplete_artist_name'
      f.buttons
    end
    
  • オートコンプリート候補ボックスの見栄えを良くするために jquery css をインストールしました。この投稿を参照してください。次に、編集app/assets/stylesheets/active_admin.css.scssして jquery-ui css を含めます

于 2011-12-24T10:18:24.623 に答える
1

フォーム ブロックは、ActiveAdmins DSL の範囲内で実行されています。

URL ヘルパーにアクセスするには、フォームを部分的にレンダリングしてみてください。

ActiveAdmin.register Post do
   form :partial => "form"
end

http://activeadmin.info/docs/5-forms.html

于 2011-11-01T23:44:12.927 に答える