0

我有这样的评论型号:的Rails 3.2嵌套表单定制外键无法保存

class Review < ActiveRecord::Base 
    attr_accessible :approved, :reviewed_id, :for, :user_id, :text, :rating, :title 

    belongs_to :business 
    belongs_to :product 
end 

这产品型号:

class Product < ActiveRecord::Base 
    include ApplicationHelper 
    belongs_to :business 
    belongs_to :catalog 
    belongs_to :category 

    has_many :reviews, :foreign_key => :reviewed_id 
    has_many :features, :dependent => :destroy 
end 

和这种商业模式:

class Business < ActiveRecord::Base 
    validates_presence_of :name 
    validates_presence_of :category 

    mount_uploader :photo, PhotoUploader 

    has_many :catalogs, :dependent => :destroy 
    has_many :products, :dependent => :destroy 
    has_many :branches, :dependent => :destroy 
    has_many :reviews, :foreign_key => :reviewed_id 
end 

但是在评论控制器中使用此创建操作:

def create 
    @business = Business.find(params[:business_id]) 

    if params.has_key?('product_id') 
    @product = Product.find(params[:product_id]) 
    @review = @product.reviews.build(params[:review]) 

    if @review.save 
     flash[:notice] = 'Pending Review Submitted' 
     redirect_to business_product_path(@business, @product) 
    else 
     @form_resources = [@business, @product, @review] 
     respond_with(@business, @product, @review) 
    end 
    else 
    @review = @business.reviews.build(params[:review]) 

    if @review.save 
     flash[:notice] = 'Pending Review Submitted' 
     redirect_to business_path(@business) 
    else 
     @form_resources = [@business, @review] 
     respond_with(@business, @review) 
    end 
    end 
end 

我无法保存关联。 simple_form表示存在错误,但我看不到日志中的错误,并且所有其他字段都经过验证,因此我猜测关联存在问题。

面临的问题:我该如何让simple_form显示所有错误?

回答