Ошибка ActiveAdmin: нет метода суперкласса `buttons '
Я начинаю с Rails (и я также новичок в Ruby -coming from Python-), и я пытаюсь настроить ActiveAdmin для Rails 3.2.3 (Ruby 1.9.3).
Я следую this guide, но я не смог запустить его правильно. Когда я запускаю команду rails s
, посещая localhost:3000/admin
, я получаю
NoMethodError in Active_admin/devise/sessions#new
Showing /home/lex/.rvm/gems/ruby-1.9.3-p125/gems/activeadmin-0.4.3/app/views/active_admin/devise/sessions/new.html.erb where line #11 raised:
super: no superclass method `buttons' for #<ActiveAdmin::FormBuilder:0xb429ae0>
Я не нашел ничего полезного в Google, что здесь не так?
Если вам нужна дополнительная информация об этом исключении, скажите мне.
Extracted source (around line #11):
8: f.input :password
9: f.input :remember_me, :as => :boolean, :if => false #devise_mapping.rememberable? }
10: end
11: f.buttons do
12: f.commit_button "Login"
13: end
14: end
Ответы
Ответ 1
похоже, что formtastic 2.2.0 (выпущен сегодня) разрывает active_admin, и поскольку для active_admin требуется formtastic >= 2.0.0... введите в свой Gemfile этот
gem "formtastic", "~> 2.1.1"
gem "activeadmin", "~> 0.4.3"
затем запустите
bundle update formtastic
затем перезагрузите сервер (если он запущен).
и должен работать нормально...
Ответ 2
У меня была такая же проблема, и она убила меня около часа.
Я использую рельсы 4 и активный мастер формы администратора git:
gem 'activeadmin', github: 'gregbell/active_admin'
Я использовал "f.actions" вместо "f.buttons"
form do |f|
f.inputs "Enter Todo details" do
f.input :quote_id, :as => :select, :collection => Quote.all.map {|q| [ q.contact,q.id]}, :include_blank => false
f.input :name, :label => "Name of customer"
f.input :state, :as => :select, :collection => ['Active','Closed'], :include_blank => false
f.input :moving_date
f.input :revisit
f.input :address
f.input :status
end
f.actions
end
Это работает для меня.
Ответ 3
Я сделал следующие изменения в gemfile
gem 'activeadmin', '0.4.2'
gem 'formtastic', '2.0.0'
и он решил ту же проблему. Причина такая же, как описано выше. formtastic 2.2.0 несовместим с текущей версией activeadmin
Ответ 4
Я следил за приведенными выше инструкциями, но та же ошибка продолжала появляться. Он разрешился после того, как я закрыл и снова открыл rails server
, но только записку для всех, у кого есть эта проблема; убедитесь, что вы перезагрузили сервер.:)
Ответ 5
Вы запустили команду "bundle" для извлечения необходимых драгоценных камней и зависимостей (ActiveAdmin, Formtastic и т.д.)?
Это обычная ошибка при запуске рельсов.
Ответ 6
Я унаследовал проект, написанный около июля 2012 года, который использует ActiveAdmin 0.4.0 и formtastic-bootstrap
(off Git).
Из-за ошибок генерации URL-адресов в этой версии AA я обновился до 0.5.0, но теперь я получаю ошибку суперкласса. Кто-нибудь знает, что я должен делать в этой строке:
gem 'formtastic-bootstrap', :git => "git://github.com/cgunther/formtastic-bootstrap.git", :branch => "bootstrap-2"