Страница активации записи ActiveAdmin? - PullRequest
0 голосов
/ 24 октября 2011

Я работаю над приложением, для которого администратор должен активировать «темы», прежде чем они будут показаны.В таблице тем просто есть столбец с именем active.

. Я использую гем ActiveAdmin для остальной части административной панели, а также у меня есть страница редактирования тем, где можно изменить каждый аспект темы.,Однако я также хотел бы иметь дополнительную страницу для тем, которая отображала бы только этот заголовок и позволяла бы активировать тему (без возможности изменения других столбцов).Я уверен, что это было бы более удобным для пользователя, но я не знаю, как это сделать, или если это вообще возможно.

У меня сложилось впечатление, что только одна страница редактирования может быть сделана длякаждая модель.

Есть идеи?

РЕДАКТИРОВАТЬ

topic.erb

class Topic < ActiveRecord::Base

  scope :pending, where(:active => false)

  validates_presence_of :title, :description, :user_id
  belongs_to :user

  has_many :solutions
  accepts_nested_attributes_for :solutions, :allow_destroy => true, :reject_if => Proc.new{|attributes| attributes["title"].blank?}

  acts_as_taggable

end

1 Ответ

0 голосов
/ 24 октября 2011

Я не могу попробовать это прямо сейчас, но я бы сказал, что вы хотите что-то вроде этого в конфигурации ActiveAdmin:

ActiveAdmin.register Topic do
  scope :pending

  menu :label => 'Activate Topics'

  # if you want it as submenu of 'Topic':
  # menu :parent => 'Topic'

  index do
    column :active
  end
end

Где область действия pending будет моделью для простого показаожидающие (не активные) темы.Как:

class Topic < ActiveRecord::Base
  scope :pending, where(:active => false)

  # ...
end

С наилучшими пожеланиями

Тобиас

...