2012-06-06 21 views
5

Tôi đang sử dụng activeadmin và nó đã được xây dựng như nhiều người trong số các bạn sử dụng nó biết. Tôi có một mô hình được gọi là Dự án có nhiều liên kết với ProjectResources.Formtastic/ActiveAdmin đa lựa chọn nhiều đến nhiều vấn đề liên kết hộp kiểm

Biểu mẫu "chỉnh sửa" và "tạo" tùy chỉnh của tôi trong quản trị viên đang hoạt động cho Project trông giống như vậy.

form do |f| 
      f.inputs "Project" do 
      f.input :name, :input_html => { :readonly => true } 
      end 
      f.inputs "Resources" do 
      f.input :id, :label => "Selected Resources", 
       :as => :check_boxes, 
       :multiple => true, 
       :collection => ProjectResource.all, 
       :selected => @resources 
      end 
      f.buttons 
    end 

Hộp kiểm tra của tôi hiển thị tốt và tôi không gặp bất kỳ lỗi nào tại thời điểm này. Vấn đề nếu bạn có thể đoán là khi kết xuất trang "chỉnh sửa", tôi muốn hiển thị các mục trong khu vực hộp kiểm là "đã chọn" nếu Dự án có một ProjectResource như một liên kết rồi.

Hiện tại, tất cả các hộp kiểm đều hiển thị trạng thái không được chọn. Tôi đang sử dụng phiên bản mới nhất của activeadmin và formtastic có các phiên bản sau được cài đặt. (2.2.0, 2.1.1, 2.1.0, 2.0.2, 1.2.4)

Không chắc chắn phiên bản activeadmin nào sử dụng tại thời điểm này. Tôi đoán là phiên bản mới nhất.

Trả lời

9

Đối với tôi, đơn giản:

ActiveAdmin.register Subscription do 

    form do |f| 
    f.inputs do 
     f.input :users, as: :check_boxes 
     # other fields... 
    end 
    f.buttons 
    end 
end 

chỉ hoạt động.

thêm Mã:

-user lớp

class User < ActiveRecord::Base 
    has_and_belongs_to_many :users 
    attr_accessible :fields... 
end 

-Subscription Lớp

class Subscription < ActiveRecord::Base 
    has_and_belongs_to_many :subscriptions 
    attr_accessible :fields... 
end 

PS Tôi đang sử dụng ActiveAdmin 0.4.2 và 2.0.2 Formtastic.