2012-09-03 76 views
0

所以這裏的東西:的Rails:通「PARAMS」使用複選框

我有一個Rails應用程序以「PRODUCTOS」和「塔斯」兩種資源,對他們的表和塔斯相同的屬性有一個以上(量) ...模型是這樣的:

#Producto Model 

class Producto < ActiveRecord::Base 
    has_and_belongs_to_many :categorias, :join_table => :categoria_productos 
    attr_accessible :color, :existencia, :nombre, :precio, :talla, :uniclave, :categoria_ids 

#Venta Model 

class Venta < ActiveRecord::Base 
    attr_accessible :cantidad, :color, :nombre, :precio, :talla, :uniclave, :producto_ids 
    has_many :productos 
end 

我使用ActiveAdmin的管理界面和我/admin/venta.rb看起來是這樣的:

ActiveAdmin.register Venta do 

    form do |f| 
    f.inputs "Registrar Venta" do 
      f.input :cantidad 
     f.input :productos, :as => :check_boxes 
    end 
    f.buttons 
    end 

end 

結果是所有PRODUCTOS都以「新venta」形式顯示,我可以選擇它們,但實際上,當我創建新文塔時,「venta」的參數保存爲空,而不是採用選定的「producto」。

我該如何解決這個問題?我希望所選「producto」的所有參數在新創建的「venta」字段中使用,因爲它們共享相同的屬性(兩個型號實際上都具有相同的屬性)

所以,想法? ;)

+0

不應該你的領域是'f.input:producto_ids,:如=>:check_boxes'而不是'productos'當你返回一組產品ID而不是產品實例時。 – TomDunning

+0

不!我的遷移錯誤地命名......它必須是這樣的......通過該代碼,我可以按照預期在複選框列表中獲得每個產品的名稱。 – Jmlevick

回答

0

:categoria_ids: producto_ids必須是:categoria_id:producto_id或者必須使用:foreign_key的模型之間的行爲