Activeadmin: Bagaimana saya bisa memilih catatan model dengan kueri khusus?

Dibuat pada 6 Feb 2013  ·  3Komentar  ·  Sumber: activeadmin/activeadmin

Halo,

Saya memiliki masalah berikut. Ketika saya mencoba untuk menampilkan catatan model, saya ingin mengecualikan catatan dengan 'smiss'-field sama dengan 'FALSE'. Bagaimana saya bisa melakukan ini? Apakah mungkin tanpa 'default_scope'?
Contoh kode saya:

ActiveAdmin.register Approval do
  index do 
      column :id
      column 'Пользователя', :user
      column 'Заапрувил член клуба', :member
      column :dismiss
      default_actions
  end
end

Komentar yang paling membantu

Terima kasih. Larutan:

ActiveAdmin.register Approval do
  index do 
      column :id
      column 'Пользователя', :user
      column 'Заапрувил член клуба', :member
      default_actions
  end
  controller do
    def scoped_collection
      Approval.where(dismiss: false)
    end
  end
end

Semua 3 komentar

Anda dapat mengganti metode scoped_collection di pengontrol sumber daya Anda untuk mengambil sumber daya dengan kueri khusus.

ActiveAdmin.register Approval do
  index do 
      column :id
      column 'Пользователя', :user
      column 'Заапрувил член клуба', :member
      column :dismiss
      default_actions
  end

  def scoped_collection
    Approval.where(dismiss: false) # this could be   **Approval.dismissed**
  end
end

Saya sudah mencoba mengganti scoped_collection dengan cara Anda menulis. Tapi Semua catatan masih output. Berikut adalah kueri yang terbentuk sebagai hasilnya:

where Approval Load (0.2ms)  SELECT "approvals".* FROM "approvals" ORDER BY "approvals"."id" desc LIMIT 30 OFFSET 0

Terima kasih. Larutan:

ActiveAdmin.register Approval do
  index do 
      column :id
      column 'Пользователя', :user
      column 'Заапрувил член клуба', :member
      default_actions
  end
  controller do
    def scoped_collection
      Approval.where(dismiss: false)
    end
  end
end
Apakah halaman ini membantu?
0 / 5 - 0 peringkat